Update README

Signed-off-by: David Schmidt <1110325+david-schmidt@users.noreply.github.com>
This commit is contained in:
David Schmidt 2023-09-16 14:48:05 -04:00
parent 082cf220a5
commit ba3efd9e13
1 changed files with 57 additions and 2 deletions

View File

@ -12,7 +12,7 @@ The problem is that I/O is pretty difficult. No one with one of these
machines has come forward with the ability to get anything into or out of the
existing serial port.
The goal: get the ROM data of the TLC out of the machine. Hard to do without functional I/O.
The goal: get data of the TLC out of the machine. Hard to do without functional I/O.
### Audio to the rescue
@ -44,7 +44,7 @@ gymnastics of the IIe and beyond that moved Heaven and Earth to keep the entry p
The source code to do these activities is in the `src` directory, and the resulting ROM from the Tiger Learning computer is in the `rom` directory. A few pictures of the machine and its on-screen interface are in `doc/images`.
#### ROM contents
## ROM contents
Nonbanked ROM dump is available in binary and in monitor ROM disassembly form:
@ -60,3 +60,58 @@ Banked ROM exists in slots 2 and 3. The contents have been dumped as follows:
Slot 3:
* [`S3-C800-CFFF.bin`](https://github.com/david-schmidt/tlc-apple2/blob/master/rom/S3-C800-CFFF.bin) - Raw binary
* [`S3-C800-CFFF.txt`](https://github.com/david-schmidt/tlc-apple2/blob/master/rom/S3-C800-CFFF.txt) - Monitor disassembly
## File contents
The TLC comes with a virtual disk available in slot 6, drive 1 as volume `/LTWIN`. This is the volume that is booted when the machine turns on.
The contents of it are as follows:
```
]catalog
/LTWIN
NAME TYPE BLOCKS MODIFIED CREATED ENDFILE SUBTYPE
BASIC.SYSTEM SYS 21 6-DEC-91 16:48 6-DEC-91 16:48 10240
PRODOS SYS 35 6-MAY-93 17:10 2-NOV-92 21:09 17128
STARTUP BAS 1 <NO DATE> <NO DATE> 176
KERLT101 BIN 50 11-JAN-96 9:18 11-JAN-96 9:18 24764 a=$1400
BLOCKS FREE: 14 BLOCKS USED: 114 TOTAL BLOCKS: 128
```
#### STARTUP
Bootstrapping the TLC follows the normal Apple II boot sequence and loads up `PRODOS` and then runs the `STARTUP` Applesoft program from `/LTWIN`.
`STARTUP` looks like this:
```
]load startup
]list
10 PRINT CHR$ (4);"BLOAD KERLT101"
20 CALL 5120
30 A = PEEK (25)
40 IF A=1THEN GOTO 10
50 HOME
60 VTAB 10: HTAB 10: PRINT "To return to Desktop,"
70 VTAB 11: HTAB 11: PRINT "please type LTWIN"
80 POKE (49304),0
90 POKE (49326),1
100 END
```
#### LTWIN
The command `LTWIN` is a command that Tiger inserted into the ProDOS external command list (clumsily)
that basically reboots the system so that you end up back at the graphical interface.
The contents of `KERLT101` is dumped and the beginnings of a [6502bench SourceGen](https://github.com/fadden/6502bench/releases) project are here:
* [`KERLT101.bin`](https://github.com/david-schmidt/tlc-apple2/blob/master/file/KERLT101.bin) - Raw binary
* [`KERLT101.bin.dis65`](https://github.com/david-schmidt/tlc-apple2/blob/master/file/KERLT101.bin.dis65) - SourceGen disassembly project
* [`KERLT101.bin_cc65.lst`](https://github.com/david-schmidt/tlc-apple2/blob/master/file/KERLT101.bin_cc65.lst) - ca65 assembly output listing
Entry is at $1400 which immediately jumps over a data area and starts up for real at $171F. There are clearly a lot of softswitches in the $C0xx space
that the TLC is using. Figuring out what they do should be an interesting challenge.