Re: BASIC3 #BASIC

cmdrcosmac
 


Jeff,
I never found a Basic3 source file, but the ROM dump and a disassembly
can be found at:

http://www.retrotechnology.com/memship/cosmac_dev_sys.html

Basic calls UT62 for its serial I/O so you'll need to load that up and then
the Basic.
 UT62 has a bit-bang serial I/O on Q & /EF4.
Here's the patch I used to get it going on my system.
It has a MAX-232 connected to ?EF3 and Q.

.. Save of UT62 serial Patch.
.. READ Patch for UT62on Elf.
..
..        Original  Patch            Original    Patch.
.. !M8143    3F      36              .. BN4       B3
.. !M8145    37      3E              .. B4        BN3
.. !M814F    37      3E              .. B4        BN3
.. !M8151    7B      7A              .. SEQ       REQ
.. !M8154    7A      7B              .. REQ       SEQ
.. !M8164    3F      36              .. BN4       B3
.. !M8169    7A      7B              .. REQ       SEQ
..
.. TYPE Patch.
..
.. !M81C4    7B      7A              .. SEQ       REQ
.. !M81D0    7B      7A              .. SEQ       REQ
.. !M81D4    7A      7B              .. REQ       SEQ
..
.. The RCA -601 CPU board appears to have a non-inverting
.. RS232 interface on /EF4. The Elf/MAX232 interface inverts
.. on /EF3.
..
..
..                Patch            Original    Patch
8143          36;              .. BN4       B3
8145          3E;              .. B4        BN3
814F          3E;              .. B4        BN3
8151          7A;              .. SEQ       REQ
8154          7B;              .. REQ       SEQ
8164          36;              .. BN4       B3
8169          7B;              .. REQ       SEQ
..
..
.. TYPE Patch.
..
81C4          7A;              .. SEQ       REQ
81D0          7A;              .. SEQ       REQ
81D3          7B;              .. REQ       SEQ
81D4          7B;              .. REQ       SEQ
..
.. TIMALC Patch
..
8107          3E;
8109          36;
8114          3E;
8126          36;
8117          3E;
..
.. 8000 C4C4

 Note also that the same Basic will run under UT71, which uses a CDP1854 UART.
 Whichever utility you use you may have to mess with B4/BN4 instructions within the
Basic ROM. Basic uses /EF4 as a BREAK key to get you out of a loop.
 The SuperElf uses /EF4 as the INPUT key. When I tried Basic on the Elf, programs
would run one line and break. When I held the INPUT key, the program would run.
So I disassembled the Basic and found the addresses in the patch below.

.. Save of Basic BREAK Patch.

.. To run on the Elf these need to be inverted, B4<->BN4.
..
B138 3F;

B13A 37;

 This is my $0.02 worth and should get you going.
Happy Holidays!
-Chuck


Join cosmacelf@groups.io to automatically receive all group messages.