
Release 13.0
------------
NEW: Added new menu item to Configuration submenu; Adjust Clock Speed. You can
  now set the GP32 clock to 66, 99, 132, 150, 156, 160 or 166MHz. Everyone can
  run up to 132MHz, and hopefully you can get to 156 or so; some can run at
  166MHz (including me! :). Your battery performance goes down the crapper
  though at that speed, but you can turn your framerate way down.
  o NOTE: Everything is very carefully cycle counted here.. including sound
    processing to the ST main CPU; so if you clock up and the emu is running
    mega fast, then sound will be higher pitched; so you can decrease frameskip
    until its just right. If setting frameskip to 0 and its still too fast, it
    means you're clocking too high so you might as well clock down a little
    to get it right and save some battery power.
  o NOTE: Now I need to add throttling code so that even if you clock too high
    it'll run the right speed; for now, you can fiddle with your clock and
    frameskip to get it right :)
  o NOTE: Most people probably do not need to run at 166.. Castaway/GP is
    already pretty fast!
  o NOTE: Don't blame us if you pop your unit, though evidence would suggest
    the worst that can happen is your unit crashes; just turn it off and you're
    good to go :)
  o Thanks [SoD]Thor! (Thor got me through a brief brainlapse :)

Release 12.1
------------
Avigrace notices a crash on scrolling to the very bottom of his games list, in
gamelist mode. Probably an 8bit overflow at a guess, since it occurs during
menu scroll only.

CHG: Added game count to bottom right of gamelist menu
CHG: Some dialog internals to make them handle large numbers of options/games

Release 12.0 - killer!
------------
NEW: Game listing mode!
  o In this mode, disks that you have previously SELECTed (put into the cache)
    will now show their games all together in one big sorted list!
  o Gamelist-menu now lists games known in your cache in alphabetical
    order, as well as putting in uncached disks at the bottom so they're still
    findable; hitting A or B on a game will select it for disk insertion as in
    the disk menu; right shoulder will toggle back to disk picker. Leftshoulder
    does not do deletion in this view. Select will look up a disk to show you
    the other games on that disk, and Start will fire things up as normal.
  o so the gamelist view works more or less the same as the normal disk view
  but is prettier for your cached games :)
NEW: Games database can now look up .zip file contents, so hitting Select
 works on .STx, .MSA, .RAW (savestates) and now .zip's (w00t!)
CHG: Removed wide-desc mode that was in 11.6
CHG: Right-shoulder in disk picker now toggles between disk-menu and
  gamelist-menu (which is new)

Release 11.6
------------
CHG: Make floppy access indicators stay around onscreen a bit longer; sometimes
  they just blinked too fast, and I like to "see" them ;)
CHG: Reducing status/mode-line render frequency to get performance boost
CHG: Brought cache back in; we can beat it up and see if its all fixed?!
NEW: If cache is enabled then try showing a gamelist beside disks that have
  cached CRC32's; only half a screen is available, so not much can be done....
NEW: If you hit Right Shoulder in disk picker, it'll toggle between showing
  description field full width (if present) and normal (half width description)
NEW: Variable 'widedesc' available for config; if 1, wide description used; if
  0, normal thin desc used. Useful for DEFAULTS.CNF!
UPD: ST Games Database 2.0
INT: Removed some assembly.. its all 'C' now and runs just as well :) (and
  not the ass kickiest 'C' ever :)

TODO: Auto CRC the disks as they are loaded into emu?

Release 11.5
------------
NEW: Added floppy disk image for showing disk reads -- both Disk A and Disk B
  are shown as little disk images on the right bottom corner; try using GEM to
  copy from A: to B: and watch it :)
  o if the Drive B: icon flashes away and wipes out part of the virtual
    keyboard, it will try and redraw the virtual keyboard to compensate
CHG: Added "-" to the keyboard (plus is shift-equals)
CHG: "File open messages" aren't shown anymore, so you don't see filenames at
  the screen bottom anymore :)
INT: Added extremely rudimentary image handler for 16bpp mode

Release 11.4
------------
NEW: Added "gamma" variable to config; you can set gamma to 0 through 4
  inclusive; anythign else is turned to gamma 0.
  ex: "gamma 2"
NEW: Config bind value "hold-<STKEY>"; simialr to just binding a STKEY
  except this binds the value as a "hold" key (like pushing "A" on the
  virtual keyboard).
  ex: "bind-fl hold-ST_A"
  This would mean as long as you're holding left shoulder, you're
  holding down ST_A on the ST keyboard.
UPD: Included some sample configs in the distribution

Release 11.3
------------
NEW: Added bind toggle-keyboard (Custom mode can mimic left-shoulder now)
CHG: "ST_" keys are now case insensitive
NEW: Added "goto-<FILENAME>" bind operation so you can now create toggle or
  cycle configs! (one set of keys can jump to another set, etc)
FIX: If savestate is 0b long (crash during write?) then report Broken on
  file picker, instead of hanging forever :)
FIX: Try and keep Custom <name> "<name>" part on screen accurately during
  sneaky goto-<filename> changes
FIX: If a bind-op is listed twice, it should still work. (ie: If you set
  everythign to joy-fire, they shoudl all fire)
FIX: Load-config menu should always scroll to fit

Release 11.2
------------
NEW: You can bind the value "menu_configload" to a button (say, left shoulder)
  This brings up the config -> load dialog, so that you can very quickly
  jump between config selections!

Release 11.1
------------
NEW: The "print" config command now adds text after the "Custom" mode
  indicator; so if you print "MyMode" you'll see "Custom MyMode". Handy
  to know what mode you're in (what config was last loaded).
FIX: When you hit Config -> Load and there are no .CNF files, it now
  gives an error instead of crashing :)
FIX: Somehow from 10.5 private to 11.0 test version I broke the d-pad
  bindings.. fixed now.
FIX: Frameskip mode wasn't displayed properly in the indicator, due to
  changes done in 10.5/11; fixed now, so like normal again.

Release 11
----------
NEW: Virtual keyboard now has "SS" -- thats actually left shift and right
  shift. The two esses work separately even though theyr'e side by side.
NEW: Added equal sign to the virtual keyboard. (Flight sims throttle?)
NEW: Pushing "B" on virtual keyboard preses and releases the ST key as
  normal; pushing "A" however will toggle the key state.. ie: first "A" will
  push the key down, second "A" will release it, third will push it down again,
  etc. In effect, this lets you hold a key down. Useful for Shift to get
  caps (or capslock), but also in some game sif you need to hold a key down
  for awhile, like "=" for throttle or something? perhaps autofire in games
  that have it built in?
  NOTE: If you're being a smart guy and pushing "A" to hold it down, then
  "B" to push it, then Castaway/GP is smart enough to just let the key up.
  Punk.
NEW: On virtual keyboard, keys that are held down are shown in green. (ie:
  blue normal, red is cursor, green is held down)
NEW: Joystick autofire; when turned on via the Configuration menu or
  variable, will push the fire button pretty frequently on your behalf
NEW: "joy_autofirethresh" config variable to set the speed of autofire. Default
  is 400. (Though in testing, havnig Xenon 2 with autofire of 300 is pretty
  exciting! 200 messes upt he game.. it can't handle the human thumb that
  fast ;)
NEW: "joy_autofireactive" config variable; default 0; if you set to "1",
  autofire will commence.
NEW: Config variable "print"; the "value" word is just passed to the config
  log. Potentially useful so you know what the heck config you just loaded :)
NEW: Changed "Calibration" in Option menu to "Adjust Configuration ...",
  which contains menu with Mouse Calibrate, but also Autofire and others.
NEW: Created "Load Config" menu in Config menu; like the main disk picker, but
  only knows how to find .CNF files. If an error is detected during config
  load, the error log is shown
CHG: Picking a config file from normal disk picker will also show error log
  if an error occurs during config load
NEW: "Show last config errors" option in config menu; this will show you
  the error log from the last loaded config file (again). Could be useful
  for debugging sake.
CHG: Delete file now defaults to NO! (doh!)
CHG: Moved Toggle Render Mode to configuration menu
NEW: Variables for binding..
  o Notice you cannot rebind START, so you can't hang yourself :)
  o bind-up, bind-down, bind-left, bind-right
  o bind-a, bind-b, bind-fl, bind-fr, bind-select
NEW: Values for binding..
  o mouse-up, mouse-down, moust-left, mouse-right, mouse-fl, mouse-fr
  o joy-up, joy-down, joy-left, joy-right, joy-fire
  o keyboard keys; giant list to be included later (see html docs)
  o special: toggle-autofire, toggle-frameskip, frameskip+90, frameskip-90
NEW: "Custom Input" in options menu; (bind mode)
  o default behaviour of SELECT is n/a for custom mode
  o default behaviour of LEFT SHOULDER is n/a for custom mode
CHG: The mode hint ("Joystick", etc) at bottom of screen should now blink a
  little less, and shoudl result in an ever so slight performance improvement
CHG: Warning dialog (when you go to Custom mode, but no config loaded) now
  offers you the option of loading a config file right now

Release 10.4
------------
CHG: Various button defaults
  o Restored virtual keyboards "repeat rate" to what it was in 10.2
  o fiddled with various timings
NEW: Support for config files
  o On running Castaway/GP, DEFAULTS.CNF is read; this lets you set default
    config values for Castaway/GP; if the file isn't present, internal
    defaults are used instead
  o You can create .CNF files too, which will be shown in the file listing.
    By picking a .CNF file, it reads that config file. This lets you override
    settings from your DEFAULTS.CNF for example, so you could change settings
    on a game by game basis if you like, or have a few template configs.
  o Added configuration options to control the repeat rates and such..
     - KEYNAME - DEFAULT - DESCRIPTION
     - keythresh - 600 - controls duration between gp32 button detects
     - vkeytravel - 300 - controls duration between moving cursor on vkeyboard
     - vkeyrepeat - 400 - controls duration between hitting key again on vkeyb.
     - vkeyduration - 200 - controls how long a vkeyboard key is held down
       when you've pressed it on virtual keyboard
FIX: Clean up "disks inserted" message after you've pressed the button
CHG: Mouse calibration only works when mouse is in relative mode
  o this makes Star Wars much more playable
  o Populous 2 is almost workable, but not quite, now

Release 10.3
------------
NEW: When ST keyboard buttons are pressed, they are now down for just a moment
  before being released. Prior version of Castaway/GP would have a key press
  immediately followed by a key release, which works for 99.9% of games.. but
  a few didn't like it. This should help along a few games.

Release 10.2
------------
CHG: New mouse calibration code (for the 6th or 7th time ;) -- seems to work
  well in that it gives you full range of movement from the current mouse
  position as if it was center of screen. (so ideally do the calibration from
  center of screen!)
CHG: Automatic mouse-calibration at resolution changes
CHG: Automatic mouse-calibration when approaching perceived screen edge, so
  that it'll let you run off the edge if you want to.. TOS won't let the
  mouse fly off the screen anyway
CHG: The virtual keyboard starting position is in the middle now (near the
  numbers) since most often the first time you pull up the keyboard you'll
  be wanting to go somewhere else.. this should help minimize that first
  bit of travel time
FIX: If you left-shoulder deleted the last file in the file listing, then
  pressing down would let you scroll forever. Now fixed.. deleting an item
  now selects the previous item so you can't scroll down into nothingness.

Release 10.1
------------
FIX: Updated version; doh :)
NEW: Save state menu now shows filename of disk-A: thats in existing save
  states, or "Empty". This way you can tell which slots do not exist at all,
  and if they do exist, what disk was in it
NEW: Gamma/Brightness adjust added -- this is done in such a way so that
  colours will never become another colour (red will not become green). So
  if a colour is at max green (rgb(0,255,0) then it will not change. But if
  it is at half green (0,127,0) then it will let you step it up and still be
  green. At max gamma, everything will be essentially white. So the gamma
  settings let you bring everything up to the point where they would go to
  white if we went another step. You get 4 steps. (Making higher granularity
  doesn't seem to have much point)
CHG: Retouched the mouse calibration in hopes that it works :/
CHG: Brightness of plasma increased a touch to make it visible but without
  ruining the bouncey text effect

Release 10
----------
CHG: Merge splash demo and splash text into one screen, and tone down
  the plasma. Make the Castaway text go on top. Nice!
CHG: When in frameskip mode, left shoulder only does frameskip.. doesn't
  toggle keyboard. Woops!
FIX: Properly checks for TOS's existance before firing up the emulation ..
  this ought to help out people who didn't install one or put it into the
  wrong place
CHG: Updated games database to 1.9

Release 9.2.1
-------------
NEW: Pushing SELECT on a .RAW (savestate) will look up game details for the
  disk that was in drive A: at the time of savestating (cool!)
NEW: 1/4 of a splash screen :)
CHG: Left-button toggle of keyboard also sets the delay timer for normal keys
  so that it doesn't immediately re-register for frameskip-minus in that mode
CHG: Will remember disk selection when you reset Castaway/GP and return to the
  disk picker menu
FIX: Will try to sort disk listing properly :)

Release 9.2
-----------
NEW: Left-shoulder will toggle into keyboard mode, or back to the last mode.
  (Much like select toggles frameskip, or right shoulder toggles cursor/mouse
  in those modes). Bear in mind if you use left-shoulder to toggle to
  keyboard, and then hti select to go to frameskip, you will have confused
  the "last mode", and will probably end back up at "mouse" sooner or later ;)
CHG: Caching of CRC's is temporarily removed, since its acting up on some
  units.. I'd rather have it not crash for everyone, than work for 90% :/
  I'll catch it when I can see it.. so far doesn't occur to me :(
CHG: File picker tries to keep the same scroll area when submenus pop up, so
  so you don't lose your spot (selection stays on same item, but in 9.1 the
  selection would scroll to center on return to file picker focus)

Release 009.1
-------------
???: Is medium res in accurate mode wrong colours?
INT: dialog routine can now handle giant lists and scroll up/down them
INT: Dialog can now show a description column beside text items

CHG: Savestates are incompatable with them from 009! I'd open them up and
  do an in-game disk-save if you can before going to 009.1!
NEW: You now get 8 savestate slots
NEW: In the file picker, it now shows the filename of Disk A beside the
  saved state, so you have some idea where it came from
FIX: Handle bad savestates better
CHG: Bumped to cache version 2 .. cache will rebuild as used
NEW: Disk selection is sorted alphabetically ("asciiliciously!")
NEW: Appears people were inserting disks without ejecting first; this would
  cause a reboot/crash for drive B: (ST too smart for us), so we now implicitly
  eject the disk for you when you insert a new one :)
NEW: Changed disk menu to use our pretty dialog system
NEW: Disk picker now shows "A:", "B:", "ROM" beside the currently selected
  disks, when you pick new ones

Release 009
-----------
NEW: Added loader support for zipped disks, since I'm sick of unzipping them ;)
  o .msa and .st inside the .zip is supported
  o game database doesn't know how to deal with .zip's yet
  o saving to smc when it was a .zip doesn't work yet (?)
CHG: Options menu now has a submenu for restart options -- needed space and
  keeps it cleaner I think
NEW: Options menu now has a "Save State" submenu where you can save out a
  savestate, or erase an existing savestate
NEW: Disk picker (when emulation is not running) lets you pick a savestate to
  open *instead*. If you're using it for disk insertion while in emulation,
  the savestates are not visible!
  o Savestates are SAVE_#.RAW files, for this release. Picking a SAVE_1.RAW
  file with A or B will pop up a dialog if you wish to open it. If you hit yes,
  it will load and uncompress and you'll immediately be where you were when you
  saved it. No need to push "start"
FIX: It will try to detect a bad STCACHE1.TXT file and delete it

Release 008.3
-------------
NEW: Added ST busy-bee icon for Free Launcher :) (Thanks Matt!)
NEW: Added "accurate render" mode for medium resolution (had one in "fast"
  renderer for awhile)

Release 008.2
-------------
NEW: "Reboot GP32" option in options menu
CHG: Shows CRC on disk-detail or cache-error emits
FIX: Some games in database woudl show up with funny characters instead of
  game name. Fix. Thanks for the data loic!
NEW: Updated to database 1.7

Release 008.1
-------------
FIX: Deletion of files would delete the first or second file, always, instead
  of the correct file! Sorry!
CHG: Updated the games database to 1.2; includes flame of finland now and
  assorted random other disks.

Release 008
-----------
NEW: First cut at support for game disk -> game listing database:
  o ATARIST\STGAMES.TXT may be present; if not, skip database. If found,
    load it into memory for later use
  o CRC32 calculation routines
  o When user hits SELECT, pick up the file and CRC32 it; if a CRC can be
    determined, look it up in database and show dialog of games on disk
  o Cache; once a CRC32 has been found for a given filename, shove it into
    cache so that we don't need to recalculate it next time.. much faster!
  o Cache is saved to SMC, so you need only look up a disk once ever!
NEW: left-shoulder will let you delete disks from the disk picker

Release 007.1
-------------
CHG: Defaults to accurate rendering, since it seems fast enough.

Release 007
-----------
NEW: Per-scanline-palette management; or in reality, went to 16bpp render
  mode, to make life much easier.
CHG: Render the virtual keyboard less often; shouldn't hit performance
  anymore to have it showing
FIX: Can drop from frameskip 90 to 0 in one hit now; (used to work only
  with 91+)
INT: Added 16bpp font and graphics support
INT: Made rect primitives 16bpp aware

Beta 006
--------
CHG: Button timer upped a bit; try and minimize mistakes people make (500->600)
CHG: In frameskip mode, the shoulders now inc/dec by 90, not set to 90 and 0.
  This means if you're at frameskip 3, and hit right-shoulder it goes to 93,
  and then left shoulder is back to 3, where you had it.
CHG: Tune the Select button for better frameskip mode toggling
FIX: Found the source of the popping issue. Very weird and subtle, and a result
  of oddities in the design of the GP32 hardware :/ Worked around the oddity
  and now we have nice sound. Thats worth a 006 release isn't it?! :)
CHG: Whew, no more of this fast buidl versus slow build crap. Al speed, all the
  time, damnit!

Beta 005
--------
Check README for the new button assignments, since they almost all changed :)

CHG: Now going to release as two binaries.. a fast with okay sound one, and
  a pitifully slow one with good sound. Sucks.
NEW: Built a simple dialog system, so can present cute little menus.
CHG: SELECT toggles into/out of Frameskip mode (so you can get into
  frameskip from any mode, and back to that mode when you're done!)
CHG: START brings up a new Options Dialog, where 99% of everything is done
CHG: Firing-up screen shows sound status and a tiny bit of help
CHG: START used to pause in 004; Options menu pauses emulation, so START will
  in effect still pause.. and START again to dismiss the dialog and resume
CHG: Moved Mouse Calibrate to the options menu
CHG: "Left shoulder" is nolonger used to cycle between input modes; instead
  the options menu has all the modes on it, to make them easier to pick
NEW: "Toggle sound" is available on the options menu
CHG: Disks menu on the option menu, where youcan save the floppies to
  SMC, and will soon have Eject/Insert, etc.
CHG: Right-shoulder in mouse-mode now toggles over to Cursor mode; Cursor
  mode right-shoulder toggles over to mouse-mode. Now you can toggle between
  the two modes with no work!
CHG: Keyboard mode.. going off one side wraps the key-selection to the other
NEW: When in frameskip mode, left shoulder sets to 0 frameskip, while
  right shoulder sets to 90 frameskip. Bam!
CHG: Bottom part of screen shoudl always be black, to keep visibility high
NEW: Disk submenu now sports Eject operations
NEW: Disk submenu now supports inserting new disks; first eject current
  ones, then insert the new ones!

Beta 004.5 -- inbetween release
----------
NOTE: MSA support has always been in the core, actually, though I never
  published it as some testign was needed. I leaked its presence after 004
  came out to get some fast test results from people, and it worked well,
  so for 005 we can say its fully supported :)

NEW: Farty-sound is implemented
NEW: .MSA support!
NEW: Medium res supported; we "squish".. every other pixel line is cut out :)
FIX: Function keys on virtual keyboard were "off by one"
FIX: When resetting the ST, it always returns to Mouse-mode now
NEW: In frameskip mode, up/down is -/+ 10 frameskip

Beta 004
--------
CHG: Increase button-threshold-timer so double-clicks and such happen less
FIX: Joystick shoudln't "stick" anymore -- works *really* well
CHG: Mouse buttons are redone, so they too don't "stick"; drags work better,
  and double clicks work better
NEW: If a TOS image file is not selected or available, won't proceed
NEW: Cursor-mode
  o d-pad pushes ST cursor keys
  o B/A act as Insert/Home (should turn in many games)
NEW: Mouse-mode: Right-shoulder recalibrates mouse
NEW: Start now pauses (will be options menu sometime?)
CHG: Input-mode is rendered ever frame (regardless of frameskip), so its
  easier to adjust finely
CHG: Slightly brightened palette.. a little more authentic now
NEW: Faster rendering; might experience tear-lines, but should render faster
  and smoother.. every framepersecond is a less frameskip needed :) 10%!
NEW: Joystick-mode.. "A" is "up" (for jump in platformers) and
  right-shoulder will now hit the spacebar (to skip intro screens maybe)
CHG: Added keys to virtual keyboard; Return, Backspace, Escape, functon keys
NEW: Disk saving is hacked in; not elegant, but works well :)
NEW: Disk picking menu now supports more than one screen of games.. scrolls
  with the selection so you can go up and down
NEW: Disk picking menu pages up and down right left/right, in addition to
  going one at a time with up/down
