Magnetic/Palm Codejedi 2003 ------------- FUTURE: o title load pictures? TODO: o autosave? (doable with Magnetic at all? Easy for Frotz and Scott..) o fixed width option w/ horiz scroll? full screen redraw w/ fixed height? o custom wordlists o turn on quetzal save format? (break old format!) o high res nav icons? o handle colour and boldface? (what games use them? I only play early Infocom) o run in med, then normal, and letters cut in half o return for MORE window (its modal.. hmmm??) o "thinking" or snoozing indicator while thinking, saving, etc? o General performance (armlets?) o command history o Blit whole pictures instead of rendering pixel by pixel? o picture animation o font bucket o bg/fg colour o game dirs for too many story files; easy? (skip VFSPATH, and use a global var, assigned at mainform?) o Wonderland can't seem to save or load.. weird. o Level 9 Kronos 1.3.2 ------------ Aesthetic changes for Level 9 potentiality and autosave. Kronos 1.3.1 ------------ CHG: Automapper feature check is now memory based instead of OS version. o check heap at AppStart; if 300k, turn on automapping. (So OS4 with large heap can do it too) o if mapper is turned on (300k of RAM at launch), then a "M" shows up in the bottom corner feature listing in About window. (For debugging) NEW: Memory low warnings o If runtime memory dips below 5k during a game memory request, it'll warn you "Memory is very low - Kronos may not be able to operate this game on this unit!". If memory is more than 5k and less than 15k, it'll warn you "Memory getting low!". In both cases it'll keep at it, but at least you'll likely know if theres a problem coming :) FIX: Workaround; on pre-OS5 devices, page up/down could crash due to a bug in the OS; this version has a workaround so should smooth scroll like the others. Kronos 1.3.0 ------------ Goal: Preliminary mapping support Goal: Preliminary game notes support NEW: When text is inserted into the entry field, a space is prepended if needed; a space is always added afterwards, as normal. ex: If you had "look" in the field, and tapped on "Wristband", then it would now have "look Wristband "; previous, it would have "lookWristband " which isn't as useful. However, if you had nothing in the field, then you'd now have "Wristband " -- no prepended space. NEW: Mapper module; only activated on OS5 and later devices (just to make sure theres lots of RAM free; I suppose I can check for RAM and activate it if lots of RAM available on a per-game basis.. someone remind me later!) o Checks for OS5 before activating o Only watches movement commands like north, south, etc o Registers rooms and joins between rooms o A join is created one way; go from A to B registers an A->B connection; to make it back, you need to go back that way! (This handles one-way hallways, etc, then). For a good map, you need to go things like.. A->B B->A toggle, then go to the next room. But as you explore, a map will get built up I imagine. o Could add an option to assume two way connection? o Can be confused by rooms that lead to rooms with the same name o Maybe survives spells and teleports, etc; since it maps room to room, by movement commands only, it should not connect when you teleport, etc. We'll see. o When you leave a game (back to the picker), it saves the automap o When you pick and Start a game, the automap is loaded NEW: Map window o hit Return on keyboard to dismiss (in addition to OK button of course :) o Center shows room centered on o Click buttons to change "center" to the room picked; thus letting you maneuver around the automap by button taps o Added "Recenter" button which returns you to the room you're standing in o Hides buttons for rooms that are not known; thus the mapper shows your current room plus known surrounding rooms o Handles all 8 basic directions; up/down not yet shown o If current room isn't mapped yet, it'll error and exit right away o Added Find popup; tap it to get a list of all known rooms; pick one to center on it; this lets you go to alternate floors or find rooms you've been to that have no connections to them, and other such oddities o Added Up/Down buttons to bottom; they're only available as appropriate but lets you navigate automap pretty nicely! FIX: The "return character" in the wordlists should now be transparent on colour devices; shoudl look a little better when you select the item NEW: Note window o available from pulldown menu and standard /A keyboard/graf shortcut o Content will be stored in note.txt file in save diretory; this way you can get at it from your desktop easily, too :) o When you edit, the .txt file is pulle dinto RAM, editted, and then returned to VFS when you close the window o Note content limit is pretty long; approx 32k o Page up/down will scroll the field and scrollbar o Scrollbar will scroll the edit field o Defaults to scrolling to the end of the field, so that you can see most recent notes, and add to it right away INT: Took off formupdate of Picker (maybe caused double drawing?) Kronos 1.2.2 ------------ NEW: Updated to latest version of official Frotz (2.43) o RISK: potential for additional (or less?) resources needed... o Changes to files: fastmem.c (load, save, undo handling), dumb_output, dumb_input, dumb_init, dumb_pic (to handle the input and output, and because they globally allocated too many copies of f_state) o Due to new Frotz, Trinity (and presumably others) now work :) o New Frotz has made response time faster NEW: Honouring "more prompt" as suggested by zcode games; this should get you MORE pauses without things whipping by at the beginning of a game. CHG: Removed limit/warning on starting multiple zcode games in one session CHG: How width is handled; fixed the status bar on many games INT: Start scrolling at the bottom immediately; intenral change to scroll fudge counter (foo) to make all fonts scroll right right off. Kronos 1.2.1 ------------ NEW: Magnetic Scrolls pictures are now shown with an ARMlet if you have an OS5 machine with a compatible processor; otherwise it falls back onto normal Palm 68k code. o Speed of rendering is about 50% faster for candidate machines o Would be much faster still with direct screen draws, but then its a compatability risk for future devices Kronos 1.2.0 ------------ NEW: Scrollback to view history o Scroll up and down work in all devices; checked OS5, old Clie o When a key gets pushed, the scroll is reset to show current screen; this means button bar presses, hitting RETURN on keyboard, hitting Checkmark, etc, all reset scroll o Button bar things that dont' hit a key don't reset scroll; picking from wordlist won't reset unless a Return is included, since otherwise it just goes into entry field o Tapping on screen words works during scrollback; thus you can build commands in the entry field while scrolled back! o It won't let you scroll too far :) nice try ;) o Page up/down keys on unit will scroll a few lines at a time o You can tap and hold on scroll arrows to do a smooth scroll up/down NEW: A bug in Wonderland would crash on Kronos save/load; worked around it but still some problem save and loading in that game. Weird. FIX: .z* games now listed as ZCode games and should start fine (they worked in 1.0.1 but broke in 1.1 due to the Scott Adams addition) NEW: Overhauled the file IO subsystem; should be much faster for games to read and write their data and save files. Damn, I'm impressed :) o progress bar will work a little differently o zmachine loads and saves much faster now o scottfree loads and saves fast o magnetic loads and saves fast FIX: Prompt line (over top of button bar) is now cleaned up properly FIX: On OS5 units, the descending part of the font is not clipped CHG: About window; added Scottfree to credits NEW: Page up/down on device now scroll game picker listing Kronos 1.1.0 ------------ Trying to squeeze Scottfree into this as well :) NEW: Changed subsystems so frotz saving would be much faster (10s instead of 60-90 seocnds in some cases :) o Turned off the "save warning" since its much less necessary now o Added a progress bar so you can see whats going on NEW: Button bar icon to show current approx battery status; it has only four levels.. <25%, 25-50%, 50-75%, >75% NEW: Game listing is now cached and sorted; nice and fast. FIX: A couple error messages still showed "Magnetic/Palm"; fixed. NEW: Scottfree added to supported interpreters o picker shows "SF" for Scott Adams style games o games must be .sa to distinguish them from zmachine games (rename from .dat to .sa is easily doneusing Filez or before upload, etc) o Added current room name to status line o Made "quit" return to picker screen o Made it so you can start another game after returning to picker o Low requirements; should run fine on pretty much any unit :) o Hitting Home button should return to game picker as expected o Added Load and Save to interp o Tied Save and Load into Kronos system FIX: Start another zmachine game after quitting one without having to restart Kronos.... o Woops, doens't work all the time; something in Frotz. Added a warning so you know to restart until I fix it FIX: Some slight glitches on screen shoudl be cleared up o no pixel garbage at bottom, just above button bar, from leftover letter descenders o picture clipping in magnetic scrolls CHG: Pushing "L" button now emits "Look" instead of just "L"; This makes Scott Adams happier NEW: Added "Game" pulldown menu; it exists mostly to make for easy keyboard shortcuts; most of it is just like hittin screen buttons o Load, Save, Zoom Picture, Quit Game o Thus, you can hit Cmd-Z to Zoom Picture NEW: Hitting "Return" on a keyboard in Picture window will dismiss it FIX: When prompt takes over button bar, and then returns to button bar, the area is redrawn and the picture thumbnail redrawn, to repair any artifacts NEW: Gorgeous new icon.. thanks Wouter! (b/w, gray, colour, high density) Kronos 1.0.1 ------------ CHG: Button bar movement buttons now show their command letter on the screen like when you type them NEW: When you are saving a game in zmachine, it'll show an alert "this may take awhile"; it looks hung, but is not. Depends on the game, your unit, speed of expansion media, etc. CHG: Game picker now shows .dat, .mag, .z* only; other files ignored. Kronos 1.0.0 ------------ Bumped to 1.0; let me know if I can release this! First cut at incorporating a second interpreter; some documentation even, too. Frotz 2.32 added. Will need to refresh to Frotz 2.40 later. (2.50?) NEW: HTML manual included in .zip file NEW: Changed name to Kronos (from The Pawn) to reflect the dual nature o Updated About, pulldown menu, launcher name NEW: Zmachine support o Tapping on screen should still pull up wordlist o status bar should be halfway usefull o small/large text should work as expected o wordlists and action buttons should work as expected o save and restore implemented o when saving, will add .sav if you don't yourself o the Load button uses "restore" for zmachine, "load" for mag-scroll o Disabled "undo" feature for now; gets us back major memory! o Warning when loading on older units, just so you know. Many or most (?) ZCode games should run on older units, but no idea.. so we'll see :) o Looks like Clie t615c has lots of heap RAM and can actually run ZMachine stuff not too badly. Cool :) CHG: Game picker is now not just static buttons; since you can have a variable number of ZMachine games, we need a scrollable listing. o Now displays all files in your Magnetic directory with a MS or ZC beside o Select a game datafile and hit Play to launch it o Magnetic Scrolls is .mag (same base plus .gfx is assumed to be graphics for it); ZCode is anythign at all, other than .sav and .gfx which are hidden. o Using feature memory to hold story isn't hard.. but is complicated since frotz assumes it can write into the story area (variables, etc). So to save memory, would need to have write-handlers added :/ o Picker has alternating highlighted background colour for units that can do it; keep the screen from being too boring o tested on a real T615c to make sure still happy NEW: Save directories; when you hit "save" or "load", it now only looks in game specific directories; this lets you re-use save names for every game without fear of colliding, and it stops you from loading a save for one game into another (which crashes the interpreter if you try it) o the save directory is gamename.dir; so for The Pawn, which is the game file pawn.mag, the save directory would be "pawn.dir", so you would find its files in /Palm/Programs/Magnetic/pawn.dir/ as *.sav CHG: Font handling.. o OS5 devices now have the option of tiny, medium, or normal (big) o Old-style Clie devices have the option of tiny or medium (normal can crash the device due to the Sony OS bug) o Standard 160x160 units will only have the normal font option o tested pop up wordlist to make sure still working o OS5 small, med, large all good o Clie highres, small and med good. o 160x160 std: good o Clie T415 gray: tiny and medium worked well o tested on a real T615c to make sure still happy NEW: Hitting "checkmark" or Return even when entry field is empty will process as a return to the game NEW: "graphics on" is automatically typed for you, in Wonderland CHG: Now requires "Kronos" directory instead of Magnetic directory. Sorry about that! Use "Filez" or MSExport or the like to move the files from the old directory to the new one! CHG: Maybe slightly faster OS5 picture rendering? FROTZ: Changed zbyte to zword for h_screen_cols, so that it could handle 320 pixels wide; changed width char/string functions to return in pixels instead of in characters, to allow for variable width fonts. Seems to work. Magnetic 0.9.2 -------------- FIX: Nailed the older-Clie OS crash bug *Good*. Only cost $249.95CDN plus tax to do it :P (Sony Clie T615C). The issue is that mono bitmaps require a 8bpp member in their family (pointing to the mono bitmap no less!) to avoid the wedge. GAH: Spent 2 horus wrestlginw tih weird random garbage; Palm stack too small; increased stack size and all is well again. CHG: When tapping on a word, non-alphanumeric characters are tossed out (ie: we ditch commas, periods, etc) CHG: Swapped E and W buttons; "W" is now on the left of "E". It just feels wrong to have west on the east side of something. When I read things, though I say "north south east west", but it just "looks" wrong :) NEW: Three types of popup word lists: o Standalone wordlist, summoned from button bar o Navigational wordlist, summoned from button bar o Word-relative wordlist, summoned by tapping on a word o Some of these words have a return at the end; it is clearly marked in the text with a little return button icon o If it doesn't have a return button, it is inserted into your edit field Magnetic 0.9.1 -------------- FIX: Try and work around the infamous Clie OS Bug :/ What it is is you can run an old Clie (pre-OS5, they fixed it in OS5) in true low res mode, or true high res mode (with all high resoperations); if you try and use high res assist mode, it will crash if you mix high and low res operations. If you use all low res ops, or all high res ops, you're okay. We of course want high res images, and the optionof "low res" (smoothed high res assisted) text.. but that crashes the unit due to the OS bug. o Fix.. on old-style Clies, forces you into Tiny Font mode, always. Its better to have tiny fonts + high res images, than just all low res everything :/ Magnetic 0.9.0 -------------- NEW: Lots of graphics modes for the artwork to try and maximize what each device will see. o Low res grayscale mode supported; unfortunately, most units in this category don't have the RAM (heap) to load the graphics, and so don't see any artwork; but some few units do have enough heap, and so will get low res grayscale artwork (see screenshot) o Low res colour mode still supported; listed for completness o Old Sony Clie highres (OS3.5 and OS5 style); Suported for both grayscale (such as on T415) and colour (T615C, NR series, etc). o Palm OS 5 style highres (Tunsgten line, Sony NX, NZ, etc) and other OS5 ARM units; note that Tungsten W is included here, as it has OS5 highres even though its an OS4 unit. Supported in both colour and grayscale. o No direct screen draws are done, for keeping future unit compatability o Order of attempt is colour over grayscale (duh); fist try OS5-style highres, and if not available, then use old style Sony highres, and failing that, use low res. NEW: OS5-highres units will now have the option to use teeny fonts o Under the "Start" button is a checkbox to enale/disable tiny fonts for those units that have OS5 highres; I may add tiny font to old-style Sony highres units if the demand is there NEW: Turn up some compiler optimizations.. slight speed boost NEW: About dialog, bottom right, a list of 'features' detected on device NEW: When you save a file (by entering "save" to the game), a ".sav" extension is added if you did not enter an extension; likewise, when loading, if no extension is mentioned, ".sav" is appended. Keeps it organized this way NEW: New "load" button bar button (arrow up); tap to see a list of .sav files, and pick one to try and load it; you still get to enter "y" or "n" to confirm NEW: "Save" button bar button; it just enters "save" and return for you; you still must enter a filename and confirm; if you have loaded from a file, when you hit Save then the loaded filename will be shoved into the input field to save you typing it. (If you hit save, and have not used load, then the filename 'default.sav' will be used) FIX: Scrolling used to have a blank line or two on very first screen; only noticable in tiny-font mode; it muckered up the text-picker; shoudl be fixed now. Magnetic 0.8.1 -------------- WARN: You need lots of free RAM for this to run; if it has problems when running, do a pinhole reset and try it then :) NEW: When multiple expansion cards are found, it will use the first one found that has a /Palm/Programs/Magnetic directory on it. This should solve most peoples problems. Magnetic 0.8.0 -------------- o only one VFS is handled; if you've got multiple, I need to build something to pick the card to use :) WARN: You need lots of free RAM for this to run; if it has problems when running, do a pinhole reset and try it then :) NEW: Added version to bottom corner of About dialog so you can see what the real version number is (since I leave resource version for launcher set to last major revision number, usually) CHG: MORE-pager will now not go off if theres no more text in the pipe CHG: MORE-pager comes up after 11 straight lines of text NEW: Forgot to eliminate stale lines of text; now only keeps the last 200 lines of text. Once a scrollbar or the like gets added so we can see history, I'll increase this or make it configurable NEW: Palm OS event loop only runs if no keys in virtual input buffer; this lets the game engine inhale at fastest rate CHG: Slight internal change about how VFS is counted CHK: Does this run on Sony Clie T615c, OS4.1 (Laing); can't get past VFS error o runs in emulator okay; emulator sees two cards though, which is weird Alpha 1 (0.7.0) ------- NEW: Tap on screen text to insert the word under the pen into the entry field o now puts a space after the word inserted NEW: Added Edit pulldown menu with the usual Palm OS text edit commands; cut, copy, select all, paste, keyboard, grafitti, etc. o Pulldown menu is available by tappign in status-line at top of screen on the left side of the screen (approx where a window tab might normally be) NEW: Current artwork is shown in thumbnail in the bottom right; tap on it to get larger version of it o Popup window to show zoomed artwork NEW: Made start of icon bar; n, s, e, w, i FIX: Exit withotu crashing :) NEW: Load and save are now implemetned and working CHG: Added "L" to button bar CHG: Status bar now draw left and right justified (split in middle to fit Palm OS screen) NEW: Added a basic game picker screen NEW: Very basic game picker o Shows a button for each MS game o When you hit button, it sets up a few things and waits o Press "Start" to try and play it; any errors will be reported NEW: Some basic error checking o Check for presence of VFS Manager; we bail out if not present, since we need it! o Checks for required OS version 4 o Make sure we're able to create or open our Magnetic directory CHG: Took out grafitti shift indicator; not really needed NEW: Added "Clear" ('X') button to wipe entry field NEW: Added "Go" ('V' checkmark) to submit .. though I would use grafitti "return" instead (swipe from top right to bottom left) NEW: Simple "MORE" facility added; it blocks all activity until you hit it :) NEW: Added "Quit" pulldown menu item so you can bail withotu hitting "Home"