Turn Word Wrap ON if you're using Notepad.

How to use the emulator!
by James the Animal Tamer
=========================

Double click the emulator's icon to get it running.  Do it now, and you can see what's what, while you read about it below.

"Emulated system" below refers to the MC-10 computer.  To find out more about the Alice 32 computer, visit these informational websites:


File Menu
=========

Exit
----
This exits the emulator program.
Use it!

Save RAM
--------
This saves a file named ram.bin.  It's supposed to be saved in the same directory as the emulator program.  These are just raw memory dumps from the emulated system.
Use it if you're a nerd.

Soft Reset F9
-------------
This is the equivalent of hitting the RESET button on the emulated system.
Use it.

Hard Reset Shift+F9
-------------------
This is the equivalent of turning the emulated system off, then on again.
Use it.

Quick Type...
-------------
This provides a means of entering a BASIC program from a text file.  If you're in BASIC's immediate mode, with a blinking cursor, you can select Quick Type..., then select a text file that has a BASIC program.  The emulator will read that file, and automatically type it, just as if you'd been sitting at the emulated system's keyboard and typing the listing.  This is very easy and convenient, and I prefer it to using CLOAD/CSAVE.
Use it.

Play Cassette File...
---------------------
On the emulator, type
CLOAD
then use Play Cassette File... to select which cassette image file to load.
NOTE:  the K7 file type is a multiple file cassette image.  After the initial load, you can CLOAD the next file in the K7 image without needing to use the Play Cassette File again.  Also -- K7 files will work ONLY when ROM Hacks are enabled (see Configure Memory below).
NOTE:  the emulator has a limited ability to read WAV files.  These must be 8-bit mono WAVs, conforming to the Microsoft standard.  The preferred sampling rate is 44100 samples per second, but other speeds can also be read.
NOTE:  the file loaded in this manner MUST have an extension of WAV or C10 or CAS or K7.  K7 files are multi-file tape images.  C10 files are the native MC-10/Alice single-file tape images.  CAS files are similar single-file tape images intended for the Radio Shack Color Computer (not that that helps -- the BASIC tokens are different, so loading one of these will yield gibberish).
Use it.


Configure Menu
==============

Configure Memory
----------------
You should be able to figure this out.
The standard configuration is "Normal" "No RAM expander."  This is a 4K RAM configuration.
Some of the games require more RAM than the standard configuration.  The "Normal" "+16K RAM" configuration should run all software for the MC-10 computer.
The "Emulator Enhanced" RAM configuration provides as much RAM as the emulator allows.  With the "Make ROM writeable" option checked, you could also POKE memory that's normally ROM.  The "Emulator Enhanced" modes are not recommended, since this is something the real computer can't do.
The emulator contains a copy of the BASIC/OS ROM built in.  If you choose to use this, you can also select "Enable ROM Hacks fast I/O."  When ROM Hacks are enabled, the emulator will intercept some calls to the ROM, and perform the requested operation while skipping the ROM code.  You must have ROM Hacks enabled to be able to use the K7 cassette image files.
You can optionally choose to load in your own 8K BASIC/OS ROM image file -- this is for advanced users.
When you click OK on the Configure Memory dialog box, the emulator will hard-reset itself.

Configure Printer
-----------------
The emulator prints to a file, not a real printer.  Before attempting to use LPRINT or LLIST, you need to specify where to put that file, by using the Configure Printer dialog box.
"Automatic linefeed following carriage return" will put a linefeed character into the output printer file, after every carriage return character.
You can specify a limited width for the printer's carriage.  This is useful for making  formatted output with a definite right edge -- an emulation of a printer that has a limited number of print positions horizontally (all real printers print on paper of finite width, right?).
Most important, set the file for printer output.  Have the emulator put its output file in a place you can remember.
NOTE: The printer file MUST be configured before you try LPRINTing or LLISTing.
Use it.

Configure Keyboard
------------------
The emulator can run using "Emulated Keyboard" or "Sensible Keyboard."  "Emulated Keyboard" mimics the operation of the emulated system's keyboard.  "Sensible Keyboard" takes into account the fact that your PC's keyboard is not like the emulated system's keyboard, and lets you type more naturally.  "Sensible keyboard" can be reconfigured.

Emulated Keyboard:
The alphabet keys and number keys correspond to the alphabet and number keys on your PC keyboard.  After that, then:
MC-10      PC
control    ctrl
  /        /
  ,        ,
  .        .
  ;        ;
shift      shift
enter      enter
space      space
  @        [
break      esc
  :        -
  -        =

Sensible Keyboard:
This can be reconfigured.  The way it works is sort of strange.  First, choose whether you're reconfiguring the normal MC-10 keyboard (unshifted, without CONROL), or the MC-10 keyboard plus the shift key, or the MC-10 keyboard plus the CONTROL key.
To edit a key, choose the key from the "MC-10 keys" listbox, and double-click it.  Then on your PC keyboard, hold down the PC's key combination that you want to assign to that MC-10 key -- and, while holding down the PC's keys, click in the text area that will be reading "Hold down key combination and click HERE."  This will add the new key combination to the old ones (you can assign more than one PC key combination to an MC-10 key).  If you want to delete a PC key combination from its assignment to an MC-10 key, then first find the MC-10 key it's assigned to, and highlight the MC-10 key (single click in the MC-10 keys listbox).  Then, in the PC keys listbox, double click the PC key combination you want to remove.  Et voila, it's removed.

"Quicktype can input lower case as lower case" is used to set what Quicktype does when it encounters lower case characters in the text file it's quicktyping.  If this box is checked, then the characters will be interpreted as inverse video (useful when entering BASIC listings that include graphic characters for the MC-10 or Radio Shack Color Computer).  If the box is not checked, then lower case letters will be assumed to be alphabetic characters.

Configure Video and Colors
--------------------------
If you don't like the colors the emulator uses, you can change them.  Just single-click on the color box you'd like to change.  This will bring up the standard Windows color requester.
Some emulators also allow you to change the window size.

Configure Sound
---------------
If you want to hear sound, the "Speaker Clicker Sound" box must be checked.  You can move the slider around to change the sound volume.
(The MC-10, Aquarius, and several other computers can make sound by sending clicks to the speaker.  If you send, say, 880 clicks to the speaker in one second at evenly spaced intervals, it sounds like an 'A' note -- what musicians call 'A-four-forty'.)
Use it.

Configure System Timing
-----------------------
Select Standard, Custom, or Fast.
If you selected Standard, you can also configure a multiplier by dragging the scrollbar around.  The scrollbar can be dragged from 1-800% of standard speed.
If you selected Custom, then you can change the clock cycles in the active scan and vblank, and change the frames per second.  [Don't count on this being configurable in the future].
'Fast' will run the emulation as fast as your PC is able to run it, without regard for keeping frame times equal.

Video Updating - Try to update this many times per second.  If you check the box, then you can move the slider around to choose how many times per second to update the screen.  The default is to leave this unchecked, and the video will be updated once every CPU frame (which defaults to 60 times per second on Virtual MC-10).
NOTE:  This emulator already implements a "video update only when necessary" algorithm, so fiddling with this box and speed may be less useful than you might think.

Speed up when accessing files -- sets the CPU to "Fast!" when you're quicktyping, CLOADing, CSAVEing, LLISTing, or LPRINTing.  When those operations are finished, the emulator will return to its normal speed.  If an error occurs in CLOADing, sometimes the emulator will get stuck in Fast! mode.  If that occurs, it's time to hard reset.


Util Menu
=========

Load Binary File
----------------
This is for loading a file into the emulated system's memory.  It can be used to assist new program development with the tasm31 cross assembler.  First, browse for the file to load.  Then, set the address you want it to be loaded to -- enter hex or decimal;  if hex, then use the $ notation, e.g. $4800.  Then, if you want to set BASIC's EXEC address to your assembly program, check the box and type in the address for that.  Click OK to do the loading etc.  This dialog box will remember its previous settings, so you don't have to keep browsing for your file -- leading to a quick development cycle;  outside the emulator, you modify and assemble your program;  then in the emulator, you Load Binary File, click the OK button, type EXEC, and enjoy the results.

CSAVEM - save RAM as .C10
-------------------------
This is for saving a portion of the emulated system's memory in .C10 cassette image format.  You'd generally use it for saving out your assembly program when you're through developing it (see "Load Binary File" above).  .C10 files can be converted to WAV files using the C10TOWAV program, and then WAV files can be played back to be loaded into a real MC-10 or Alice32 computer.

Screenshot  F11
---------------
This saves a .bmp of the emulator's screen in the "screenshots" directory.  The pictures are numbered, and wrap at 9999.
Use it!

Full Screen Mode  F12
---------------------
This toggles full screen mode (duh).  When in full screen mode, you can toggle the menu on/off by clicking the right mouse button.
Use it!

Paste
-----
This option is active when there's text on the clipboard (i.e. you COPYed a block of text from some text editor program).  Using Paste will quicktype that text.
Use it!

Wav->Cas logger
---------------
This provides one method of converting a WAV file to a CAS cassette image file.  This feature is available only when using the built-in ROM, with Rom Hacks enabled (see Configure Memory above).  To use it, select it.  Then every time you CLOAD (or CLOADM or even SKIPF) a WAV file, the emulator will automatically save a corresponding CAS file.  Virtual MC-10 and My First Alice32 Emulator can directly load these CAS files.  To use these files with other emulators, you may need to use the FIXCAS utility (see the tools directory).  The FIXCAS utility is an old MS-DOS program;  to use it, open a console window, and type
FIXCAS casname.CAS c10name.C10 128 0
HINT:  Using SKIPF has the advantage that you don't need to know what type of file is stored on the tape.

Util Menu
=========

About
-----
This shows a couple of pictures of me, and gives the emulator's version number.

