Appendix D - Changes From Version 1.0
v2r03, February 22nd, 1998 (Win95 version)
- C Compiler used to compile ReFLEX changed from
MSVC 4 to MSVC 5. No problems encountered to this
point. Executable is smaller, so perhaps we have
better code generation.
- The SOROC emulator had a bug that prevented it
from initializing on some systems. My fault; it's
- New larger work disk includes the following:
|ABOOT.TXT||Source to GMX disk bootstrap|
|BEN.PIX||128x128 pixture file (PV.CMD) (me!)|
|BMON-EXT.TXT||PSYMON Monitor extension source code|
|F12.PIX||128x128 pixture file (PV.CMD) (micky mouse @ disney world)|
|F16.PIX||128x128 pixture file (PV.CMD) (me again)|
|GMXBUG.TXT||Source to GMX monitor ROM|
|TIGER.PIX||128x128 pixture file (PV.CMD) (SSTV image)|
- New third Vdisk includes:
|CC.CMD||C Compiler (also on boot disk)|
|CC.DOC||"How-To" use compiler document|
|CRUN.LIB||Part of C runtime|
|CTEST.TXT||Example C source file|
|CUTIL.LIB||Part of C runtime|
|INTONLY.INC||Integer includes package|
|PRIME.TXT||Example C source file|
|TOTAL2.BIN||Floating point runtime|
|TOTAL2.INC||Floating point includes|
- New larger boot disk includes the following commands:
|ADV9.CMD||The original Adventure game!|
|BASXREF.CMD||for use with BASIC source files|
|BW.CMD||Sets B&W display mode|
|CC.CMD||C Compiler (Dugger's Small C)|
|CLIB.CMD||copy entire project using LIB includes|
|COLOR.CMD||Sets color display mode|
|CSORT.CMD||part of sort/merge package|
|DUMPFILE.CMD||Dumps binary files, with xfer adresses|
|EA140.CMD||screen editor optimized for ASM work|
|ENCRPT.CMD||text file encryption tool|
|EXEC.CMD||Execute command with std name. Sorry for confusion.|
|LLIB.CMD||list entire project using LIB includes|
|MAXMEM.CMD||Tells you where memend and user command table is|
|MEMCHG.CMD <adr> <data>||change one byte|
|MERGE.CMD||part of sort package|
|PMERGE.CMD||part of sort/merge package|
|PROMPROG.CMD||Prom programmer driver|
|PROT.CMD||I think this is the same as PROTECT.CMD|
|PRUN.CMD||Runs PASCAL executables?|
|PSORT.CMD||part of sort/merge package|
|PUSH.CMD||(new version) Works with HOST.CMD|
|PV.CMD||Shows .PIX images (packed 4-bit pixels)|
|READPROM.CMD||? (might be a CoCo command)|
|RECOVER.CMD||? Disk maintainence of some kind|
|RENUMBER.CMD||for use with BASIC|
|RLIB.CMD||read out list of "LIB" includes in ASM project|
|RUNOFF.CMD||? Text processor?|
|SORT.CMD||part of sort/merge package|
|SPELL.CMD||Spelling checker (part of Stylus package)|
|SRTMRG.SYS||part of sort/merge package|
|TOUCH.CMD||change file date to "today"|
|TOUT.CMD||Drives text to HOST.CMD in hardware machine|
|UNDELETE.CMD||undelete files (if you're lucky)|
|VALIDATE.CMD||disk validation (won't work in emulator)|
|VER.CMD||More complete version command|
|VERSION.CMD||version of binary file that follows 3rd byte rule|
|WRITPROM.CMD||Prom programmer support|
|XJOB.CMD||graphics demo (reset to exit)|
|XREF09.CMD||Assembly cross-reference tool|
|ZAP.CMD||deletes things like a nuke!|
v2r02, February 20th, 1998 (Win95 version)
- Added 19200 baud rate for secondary serial port
- PSYMON source code updated to include document
commentary from Percom. Also changed console I/o
base address to match the emulators I/o.
- 16-grey level display added to graphics
- New commands: 4 = color mode (default), 5 = B&W.
Unused bit in data register acts as b3 in B&W mode
Once a mode is set, it stays set until reset. You
can do this inside a program using the appropriate
command, or use the FLEX UCS commands I've supplied.
They run in the usual UCS area and use no unusual resources.
- New "COLOR.CMD" and "BW.CMD" supplied to force modes.
- PV.CMD added. Allows display of binary 16-grey level
images, defaults to extension .PIX for compatibility with
old SSTV software from SoftCicuits.
v2r01, February 11th, 1998 (Win95 version)
- Added 75 baud rate for secondary serial port
- Provided complete file retrieval over serial port from hardware machine:
- HOST.CMD rebuilt for more capabilities (emulator)
- Direct binary file transfer from host to emulator over serial port
- Direct text file transfer from host to emulator over serial port
- Automatic file closure for both modes added
- Trailing "+++" on text transfers eliminated
- PUSH.CMD rebuilt ((target is your 6809 FLEX-based hardware)
- Now provides automatic closure of transmitted files
- Source code updated, included so you can create this
command on your hardware system(s).
- TOUT.CMD added (target is your 6809 FLEX-based hardware)
- Source code included so you can create this command
on your hardware system(s).
v2r0, October 28th, 1997 (Win95 version)
- Added Tech-II graphics hardware emulation & some software. See Graphics
- Added RB.CMD - Asteroids-like game
- Added IT.CMD - Fight the Space-Spider (man, do I have to explain this???)
- Added CARDS.CMD - Poker, Blackjack, Craps & a Slot Machine
- Added CHESS.CMD - 6809 SARGON, the distant ancestor of "Deep Blue"
- Added KINART.CMD - "Kinetic String Art"
- Added STORM.BAS - Hurricane tracking program (written by Pete Gerardi)
- Added HOST.CMD - communications program with text capture capability. Includes source.
- IRQ interrupts are now available to the programmer. See IRQ Interrupts
- Added Execute/IRQ Timing menu item for IRQ rate control
- Added two sets of 8 pre-settable dip-switches, + DSTEST.CMD/DSTEST.TXT (source) example
- Fixed INC direct disassembly ($0C dd)
- EM-ICE now displays (EA=$0000) on all indexed ops
- EM-ICE now displays (D=$00), (D=$0000) or (D=I/O) on all extended, direct & indexed ops
- EM-ICE now has settable number of steps in one-shot mode, instead of just one
- ReFLEX now is completely multitasking-friendly when RUN is UN-checked.
- Control panel is a little larger to accomodate multiple dipswitches & other controls
- You can now read the emulator version & revision from an I/O port (see Appendix C)
- ReFLEX is now a commercial product. The price is $25.00
v1r40, October 18th, 1997 (Win95 version)
- Panel now supports disassembly of code in single-step mode
- Added "hardware" Real Time Clock @ $E020, documented it
- Added ACIA at $E006/$E007 for serial port I/O, plus supporting menus
- Includes MODEM09.CMD to use with serial port (also see appendix B)
- Disk LED's now show green when a disk is loaded, but not being accessed; yellow if changed.
- Added 8 user R/G/Y LED's to panel. These respond to two 8-bit user ports. (see appendix C)
- Added FLEX "TIME.CMD" and source TIME.TXT to use, and show how to use, RTC.
- Moved reset operation to Execute/Reset (where it belongs, obviously…)
- Added Execute/NMI menu selection. Just press "G" in monitor to restart.
- Added Execute/Hard Restart menu selection. Restarts the emulation completely, discards everything.
- New Execute/Chunky menu item allows control of batch instruction execution
- New File/Open and File/Close menu items allow filesystem access to virtual disk drive files
- New Help/Status menu item shows virtual drive conditions
- Application now includes 48 x 48 icon for those using Microsoft Plus's Large Icon switch
- Manual is now in HTML format, & more formally a "manual", rather than a "readme".
- New Help/Manual menu item opens new HTML manual
- disk file names in distribution now are disk0.dsk and disk1.dsk for consistency
- New update rates in PANEL submenu allow control of panel display
- Panel now provides small labels for all displays
- Panel LED's & 7-segs modified for higher contrast
- Improved memory map documentation
- Terminal emulation now "eats" all unused control codes instead of printing little squares
- Emulation now correctly determines fonts regardless of system font size settings
- Font Switch removed from modes menu; font_x & font_y in .ini file obsolete, but harmless
- "BIZZY.CMD" makes all the displays flash their silly heads off. Source included.
- You can switch the chunky code mode on and off from inside the virtual machine (@ $E029)
- Fixed bug (oh, no!) where access to ACIA data register when character not ready would crash
- We now have an official name: "ReFLEX". One more step on the way to a real product.
- In all previous Win95 versions, input $0A (linefeed) characters were translated to
$0D (carriage return) characters. Why? I don't remember. As far as I can tell at this time, there
is no need to do this. The translation was causing the spreadsheet (Dynacalc) to be unable to
move to the next (lower) row; it uses control H-J-K-L for cell to cell navigation. If anything
weird happens regarding line feed input, let me know and we'll see what we can do about
it, if anything. Repeating - this code specifically translated $0A --> $0D, so there probably
is a reason - I just can't think of it. In 1.40, this has been removed. And Dynacalc works.
v1r39, September 18th, 1997 (Win95 version)
- Added Virtual Front Panel (too much coffee!) The docs describe it.
- Added COPYNEW.CMD - does not change file creation date
- Added RDFLEX.EXE - copies real FLEX disks under MSDOS
- New "Printers" menu allows selection of LPT-# 1-4 as default printer
- Emulator now uses "FLEXem.ini" to store font & printer choices.
- "FLEXfont.txt" obsolete; delete it.
- readme.txt truncated; docs now are exclusively this MS Word file.
v1r38, September 3rd, 1997 (Win95 version)
- Another bug found & fixed - this time, one that we (that L
is, myself and the person who found the bug!) were just
astonished it had gone uncaught. The problems were with
the ADC instructions - ALL of them! The carry bit wasn't
being handled correctly, and in some cases, neither was
the half-carry. Well, at least I think it's all ok
now. Sorry about this. Eeek! The good news is now the
BASIC and FORTH both seem to run perfectly... so far,
so good. So the emulator is significantly improved.
Let me state clearly: If you find a bug, PLEASE let me
know about it, and I will try to find it and fix it.
These last two (1.37/1.38) fixes were both because the
same fellow provided both reports and test cases where
I could duplicate the situation instantly. Reports like
that get the most & best attention.
- I also found a "brittle" point in the emulation. L
The FLEX op W.CMD would take anything the user typed
in after the command, and stick it right into the
"current drive" portion of the disk FCB; should you
type (or typo) something other than 0, 1, 2 or 3 into
there, the emulation would crash rather spectacularly.
Now, you're not allowed to do this under FLEX, that's
a programming error, but then again, crashing is a bad
thing for the emulator to do. :) So I fixed it. Actually,
the emulation itself wasn't doing the crashing, it was
the DMA host drivers that were falling on the floor.
In the process I disassembled the W.CMD thingee, and
could now make it better - so it could list only .CMD
or .TXT files, which I have always wished it would do.
Another project... like I had the time. Sigh.
v1r37, August 26th, 1997 (Win95 version)
- Added menu item to switch fonts for large/small windows
properties settings. Previously, the emulator required
that windows was set to "small fonts" in the display
properties; if you were set to "large fonts", the
emulator window would not show you the bottom portion
of the simulated terminal. This menu switch allows you
to set the emulator's display logic to match your windows
settings. I apologize for not making this automatic;
but (a) I don't really seem to understand how to find
out what the system setting for large/small fonts is,
and (b) I've already used up my free questions with
Microsoft, so they won't tell me unless I give them $90.00
for the service call, which I am not inclined to do…
v1r36, August 18th, 1997 (Win95 version)
- New code for LBGE and BGE instructions
v1r35, November 21st, 1996 (Win95 version)
- Error in LBGE and BGE instructions corrected
- Now have permission from Dave Shirk to ship FLEX
v1r34, June 24th, 1996 (Win95 version)
- Now includes SOROC terminal emulator for use with "real" FLEX systems
- Now includes XFER.CMD and 6809 source code. Command will take files on a
"real" FLEX system and send them to the Soroc terminal emulator, which can in turn
place them in the Win95 filesystem. You can then use INJECT.EXE to put them
into the emulator disks.
- $0B now performs cursor up
- $0C now performs cursor right
- $1F now performs new line
- $1B, + now performs home up, erase end of frame
- Insert line & delete line now work with lower case escape sequences
v1r33, May 31st, 1996 (Win95 version)
- Potential initialization bug found & fixed. Could have resulted in
screen display beginning with unrefreshed desktop region(s).
Would only have been a cosmetic problem, but ugly. Chalk it
up to my being new to Win95 programming. :-(
- Month calculation in "About" dialog was wrong.
v1r32, May 27th, 1996 (Win95 version)
- Menu switch for auto-setting of FLEX date added (so you can set any date;
otherwise, the system date will constantly override yours, and if you're
trying to "fool" some software, you'll fail). When checked, FLEX date is
set once a minute. When not checked, FLEX date is set on boot only.
- Formatted Microsoft Word 6 document now included in distribution.
- Changed names of DRIVE0 and DRIVE1 to DISK0 and DISK1 for consistency
v1r31, May 21st, 1996 (Win95 version)
- Menu switch for capital letter inversion feature added
v1r30, May 21st, 1996 (Win95 version)
- Rebuilt emulator as Win32 application, instead of console. Subsequent changes:
- Windows Menu added:
- Exit Emulator (exit to Win95, saves VDISK changes)
- Abort Emulator (exit to Win95, does NOT save VDISK changes!)
- RESET 6809 (enters PSYMON monitor)
- Flush virtual disks
- Switchable thread release on check ACIA for input character
- Display is more consistent now, as I wrote new terminal emulator
- ASCII code 7 (BELL) in emulator now generates Win95 "beep".
- More friendly for multitasking, shares as per Win95 guidelines
- ANSI color control is no longer available. Only SOROC intensity supported.
- COLORS.BAS changed to show switch of intensity only
- ANSI.SYS no longer required in CONFIG.SYS file
- Updated README.TXT documentation considerably
v1r23, May 18th, 1996 (All versions)
- Added "FILETEST.CMD" to drive0 file; from original FLEX disk on 6809 system
v1r22, May 16th, 1996 (Win95 version)
- Enhanced SOROC emulator to accept IBM ANSI color control strings
- Added "COLORS.BAS" to DRIVE1 to demonstrate use of ANSI COLORS
- Defaulted FLEX to 0 NULLS, which fixes cosmetic issue on startup
- Added version identification to the software
v1r21, May 14th, 1996 (Win95 version)
- Enhanced INJECT to strip line feeds
- Enhanced DISTILL to add line feeds on output
- Fixed problem with padding end of file to zeros in INJECT
v1r20, May 12th, 1996 (Win95 version)
- Ported FLEX Emulator code Win95 using Visual C++ version 4.0
- Ported FDIR to win95
- Ported INJECT to win95
- Ported DISTILL to win95
- Ported MAD to win95
- "Flipped" upper & lower case, as FLEX is mainly an upper case OS
- Added command to re-flip the case defaults: FCASE.CMD
- No menu controls available in Microsoft's "QuickWin" 4 Environment
- FCASE.CMD added to flip state of upper case inversion
- FLUSH.CMD added to rewrite vdisks immediately without exit
- QUIT.CMD added for controlled exit from FLEX emulation (replaces menu)
- ABORT.CMD added for exit without rewrite of vdisks (replaces menu)
- Soroc IQ-140 emulation rebuilt to compensate for weak ANSI.SYS on PC
v1r20, April 28th, 1996 (Amiga version)
- RESET command available from Amiga Menu
- All illegal opcodes now translate to $3F (SWI)
v1r10, March 26th, 1994 (Amiga version)
Disks are now kept in memory, rewritten ONLY if you change them
Critical (for Stylus) Soroc IQ140 terminal emulation operating
Distribution includes Stylus ("EDIT") and help files
Distribution includes RENAME command (left out by mistake in 1.0)
Distribution includes Excellent "SLEUTH" disassembler
Distribution includes HELP.CMD and helpfiles (.DIR files)
Distribution includes FILESORT command by Brian Bailey
Distribution includes PUSH command (left out by mistake in 1.0)
Distribution includes UPDATE command
Distribution includes BASIC command (helpfile, too!)
Distribution includes FREEMAP command
EDIT command (line editor) renamed to LEDIT
- Emulation runs about 2x as fast as v1r0
v1r00, March 25th, 1994 (Amiga version)