APPLEUNI an Apple ][+ emulator! based on the ORIGINAL Apple emulator written by Randy Spurlock. Even though the code has RADICALLY changed I MUST give credit as there is SOME of his code sprinkled in the emulator Apple Emulator Documentation This is the documentation for the 8088/NEC V-20/80X86 Apple ][+ emulator. It is the -=ONLY=- emulator that will run on an -=XT=-, -=AND=- that -=FULLY=- emulates Apple's Super Serial Card! The emulator is nearing completion! The only things that are left to do are: Correct that NASTY serial IRQ! High res mixed text/graphics mode in EGA/CGA? Convert it over to IIe emulation complete with 80 column card! ***DISCLAIMER*** The ROM images contained within this archive are Copyright Apple Computer, Inc. I do *NOT* claim any credit in creating them (other than creating a copy from *MY* Apple ][). In order to use this program you MUST own an Apple][ computer, as not owning an Apple][ and running this emulator would be Illegal and you would be responsible for copyright violation. I only provide the ROM code so that the emulator can be used, otherwise it would be useless for those who can not create thier own images. YOU HAVE BEEN WARNED! Note to HP LX Palmtop users: Some versions of the Clock up driver are buggy! Don't ask me about this problem as I don't have an LX! :) Here is an e-mail on how to patch clkup31m.sys... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Start of E-mail=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- From: Take I've already sent E-mail to the authors of CLKUP31 and hope it'll be updated. They *may* have some special contracts with the company that products "Double-speed Crystal Kit" (including specially made crystal:31.67..MHz, and CLKUP31 driver). e.g. for "CLKUP31M SYS 624 94-12-03 22:24" A:\TMP>debug clkup31m.sys -u 02c3 02c8 43ED:02C3 2E CS: 43ED:02C4 C6063B01CA MOV BYTE PTR [013B],CA -e 02c8 cf -u 02c3 02c8 43ED:02C3 2E CS: 43ED:02C4 C6063B01CF MOV BYTE PTR [013B],CF -w Writing 00270 bytes -q =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=End of E-mail=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= The following describes the stage of completion for each of the Apple ][ emulator sections: The UNI Control Panel - The control panel gives you options for a few other panels... only some are enabled at this time and the others are reserved for expansion. I have updated the panels to a more intuitive order, and I plan on moving things around more. CPU - Pretty much runs like a 65c02 processor. If something isn't implemented correctly, _PLEASE_ let me know! SEE *HISTORY.DOC* Speed control is pretty accurate. If CPU runs to fast or to slow with speed control on, please let me know. (Don't expect it to be *PERFECT* just close!) Video - The emulator will run on a CGA, EGA, VGA, or SVGA, however, it looks much better on SVGA. To use SVGA, You *MUST* have an SVGA card and VESA driver loaded or on-card VESA BIOS. Drivers for common SVGA cards are included in the VESA directory providing you extracted this archive correctly! :-) All the Apple ][ video modes are supported under SVGA, EGA and CGA. Keyboard - The keyboard functions as an Apple ][ keyboard except for the following keys: [F1] - Activates the Control Panels [Num Lock] or [F3] - Toggle between keypad and joystick [Print Screen/System Request] or [F8] - Exit the Apple ][ Emulator [CONTROL][F2] or [CONTROL][PAUSE/BREAK] - acts as if you pressed [CTRL][RESET] !IMPORTANT! See JOYSTICK.DOC for other special keys! The status line Shows the State of: Floppy Drives, Hard Drives, Caps Lock, and Joystick. Also there are SEVERAL other changes as far as any of the 'EXTENDED' keys on 101/102 key keyboards. See JOYSTICK.DOC for the goodies there! If you are having trouble using the emulator and are using an AT keyboard on a 80186 you can 'FAKE' the pc into using the AT access commands with the 'K" option. This only applies to those using a 80186 processor! Joystick - A joystick is emulated using the numeric keypad. See the joystick.doc file for more information on joystick modes, ajustments, etc. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- = You can also use your regular joystick too! = - see history.doc for info! - =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Joystick Status shows up on the status line only when keypad joystick emulation is enabled. The Status lights are mapped as follows: Joy A F C Q <=- If it's blank no Emulation on. | | | | Green indicates Fast/On/Binary, | | | | Red indicates Slow/Off/Analog. | | | `- [Num Lock][Ctrl][R-Alt] - Slow/Fast | | `--- [Num Lock][Ctrl] - Flight Mode | `----- [Num Lock][R-Alt] - Self-Centering `------- [Num Lock][Shift] - Analog/Binary Remember, You can use [F3] instead of [Num Lock]. Disk Drive - *BUG SQUASHED* *FEATURE ADDED* SEE HISTORY.DOC! Apple DISK ][ floppy type drives are supported. The floppies are emulated by have PC disk files. The default the file AADISK6.DSK is the Apple ][ disk image for drive 1, BBDISK6.DSK is default for drive 2. If an error occurs, the emulator will continually re-try. This does NOT apply to missing files, as a missing file is NOT a critical error! The main Control Panel contains the disk speed selection for those tough-nut copy-protected floppies and branches to other floppy options. It can, however make it run like crap on a slow computer :(. Your data is safe now when you exit the emulator, or when you switch disk filenames in the control panel. ONLY switch FLOPPY DISKS (FLOPPY IMAGES ON A IBM FLOPPY DISK) AFTER you enter the control panel for the approprate disk! Otherwise you MAY LOOSE DATA! When you hear a "click" on the PC's speaker, after entering the control panel for the selected disk, your data is safe, and you may change the floppy. I may add a commit after a write later... You can also change the floppy disk names BEFORE BOOTING through the control panels. Both regular dos-order (.do/.dsk) and nybble (.nib/ndo) disks are supported. Should I really support ProDOS-order disks? Unless you find it to be a real pain in the ass to convert them, I don't see why I should. Disk activity is indicated next to the word 'Disk' on the status line. You can switch disks by selecting option 3 on main control panel. Useful for any program that requires a "disk swap". Should disks be "selected" from a menu too?? EMAIL ME! Langauge Card - A 32k langauge card is supported and can be accessed via standard langauge card methods. Serial Card - A Super Serial Card is supported and it even has the interrupt emulated! Runs Kermit for ProDos great! This means that you now can FTP all those programs now that before were impossible! On a 40Mhz 386sx, 9600 seems to be the top limit for a reliable baud rate! It also has it's own control panel. If your OS, Emulator or BIOS are Incompatable and puke during a COM1: scan, the program will now continue. The Super Serial menu provides DIRECT ACCESS to the Super Serial Card's emulated DIP-switches! The keyboard lay-out to 'toggle' the switches is as follows: Switch1 Switch2 _________________ _________________ | 1 2 3 4 5 6 7 | | 1 2 3 4 5 6 7 | ON 1 | # # # # # # # | | # # # # # # # | OFF 0 | | | | |_______________| |_______________| Toggle with key q w e r t y u z x c v b n m The ONLY switch you are NOT able to toggle is Switch 2-6 as the interrupts are ALWAYS enabled so pressing 'n' does NOTHING! See documents on www.APPLE.SUPPORT.COM for details on what the switches do... I am not providing them as the document is available from them... just search their tech database for 'super serial switches' and it will pull it up for you! Hard Disk Drive - SEE HISTORY.DOC! Pretty much looks and feels like a real Apple Hard disk, only it's faster and less prone to crashes etc. Let me know if you have compatability problems with any software. <=- Credit given where credit is due -=> Based on a Program Orignally Written By: Randy Spurlock (Hey, Randy! almost ALL your code is GONE! Do you care?) Cleaned up, Optimized, Re-Written, and Enhanced By: Andrew J. Kroll DD/MM/YYYY Updated 11/02/1997 AJK