VS1000 Audio Module GPIO-Firmware v0.4			20110607
--------------------------------------

Quickstart:
- "make" (or "gmake") will compile and link the default firmware
- "make program" will program the default firmware to SPI FLASH
  (if the FLASH already has a program, you must boot with SPI boot disabled)

See gpioctrl.c for different configuration defines, especially
GPIO_MASK : the value in the GPIOs selects a file to play
GPIO_PRIORITIES : each GPIO selects a different file, lower GPIO has precedence

You can also use spi.bat to program the firmware:
> make spiall.spi prommer24.bin
> vs3emu -chip vs1000 -s 115200 -p 1 -l prommer24.bin -c run.cmd


Using SDUPDATE.PRG:
- SDUPDATE.PRG is a normal program, so it can do anything. The default
  SDUPATE.PRG in the 0.4 version can update both the boot image
  (FIRMWARE.RAW) and the FAT disk content (CONTENT.RAW), depending on
  what files it finds on the SD card.
- Copy spiall.spi to FIRMWARE.RAW to update the firmware
- You can create CONTENT.RAW with for example the VS1000 image creator.
  Select SPI FLASH and set the reserved sectors to 0, so the resulting
  image will contain only the FAT.
- The SDUPDATE.PRG mechanism also exists in the 0.3 version,
  so you can update to 0.4 using uSD card.


Changes
=======
0.4
- 20110117 PlayCurrentFileFast() is used in both spiplayer and sdplayer.
	This version ends play more quickly when new file is selected.
- 20110117 GPIO-controlled SD player played the first file when SD
	was first inserted.
- 20101223 Separated GPIO_CONTROL into its own package,
	wav playback is by default enabled.
- 20101213 Created GPIO_CONTROL version
- 20101115 Exec() crashed if not a valid FAT filesystem in SPI FLASH. (fixed)
	(All delivered modules have had a valid FAT programmed into them.)


0.31 20101115
- Changes to source package only. Makefile did not pass the MMCSTART
  define correctly in Linux and Windows.

0.3 20101027
- Added SD playback with UART control. The software now consists of
  three parts:
  1) usbmass, which is executed after power-on and handles USB Mass Storage
     for SPI FLASH, and loads spiplayer or sdplayer depeding on the SD/MMC
     insertion switch.
  2) spiplayer, which plays SPI FLASH content, loads sdplayer if SD/MMC
     insertion switch is triggered, and loads usbmass (using watchdog reset)
     if USB attachment is detected.
  3) sdplayer, which plays from SD/MMC, and also handles USB Mass Storage,
     and loads spiplayer if SD/MMC insertion switch is triggered.

0.2 20101011
- First version, UART control and playback from SPI FLASH.
