BIOS
On startup in VIP mode the VELF menu is shown:
COSMAC ELF says Hello (v3.1) [D] Dump, [E] Enter, [R] Run ?
Here, you may talk to your VELF via your terminal program.
- D-Dumps Memory 1 page at a time, Enter an address, <Enter> dumps next page, <Esc> to quit.
- E-Enters Data into the RAM, Enter an address, Enter Data, <Enter> to next byte, <Esc> to quit.
- R-Runs at what ever address you select, Enter an address.
- Or pressing the "IN" button will cause the VElf to execute the VIP monitor or Load a program into RAM from ROM.
What's not shown on this menu is the ability to upload a .hex file! Just go ahead and do a text upload of your .hex file. The ":" character will trigger the interpretation of the .hex line.
Pressing the IN button at any time (checked during the RS232 RXCHAR routine) will cause execution to go to the VIP monitor or preload a program from ROM into RAM. If the dipswitches are all off, then the VIP monitor program is loaded. Otherwise, the program number selected by the dipswitches is loaded into RAM from the BIOS ROM. See "pgmtable" for a list of loadable programs contained within this ROM.
pgmtable:
1 = Starship (as listed in part 4 of the COSMAC ELF - Popular Electronics Jully 1977 issue)
2 = SumFun (as listed in the VIP Games Manual)
3 = PinBall (as listed in the VIP Games Manual)
4 - FF are not defined in this version.
If the IN button is pressed with dipswitches all off, then VIP Monitor is started. The VIP Monitor requires you to hold down the "C" key to enter the Monitor program. Hold "C" while pressing IN button. If you do not hold down the C key, execution of code at 0000 will occur. Once the monitor program is entered, it tests to see how many pages of RAM are available, starting at 4K it then clears the last 80 bytes of ram in the last page of ram (@0F00 in the VElf) for a Video Display. After you release the "C" button, you must enter a 4 digit starting address: XXXX
Then select what to do as follows:
"0" to begin entering data into RAM, keep entering 2 digit hex values for consecutive RAM addresses
"A" to view memory, any key displays the next byte
"B" to read data from TAPE Drive (via EF2 line), enter the number of pages to READ
"F" to write data to TAPE Drive (via Q line), enter the number of pages to WRITE