Data Science XOR computer system

Jim Battle frustum at pacbell.net
Tue Jun 21 10:16:02 CDT 2005


Vintage Computer Festival wrote:

> On Tue, 21 Jun 2005, Jim Battle wrote:
> 
> 
>>I've figured out most of the commands from trial and error, but I'm not
>>sure what the H and X commands do even though I know the parameter
>>syntax. I'm not sure how to boot (if I am ever able to get a boot disk).
> 
> 
> Maybe X is eXecute?  Try X<addr> or <addr>X?
> 

No, G nnnn is for that.  (GO)

Typing X gets the prompt "Bank ?"  Typing 0 seems to have no effect.  Typing 
another number (1-F) causes a machine hang.  I assume it is bank switching for 
banked (eXtended) memory switching, but I don't know for sure.

H is weirder still.  The format is

     H aaaa bbbb cc dd ee ff ... <CR>

You can enter any number of bytes cc dd ee ff.  aaaa is a start address, and 
bbbb is an end address (exclusive).  Whatever you type, whether it is one or N 
bytes, cc is stored at address aaaa.  The other bytes aren't stored.  Depending 
on the contents of memory and the bytes supplied, some of the addresses between 
aaaa and bbbb-1 are printed out.  I was guessing it is a byte string search 
command, but the fact that the first byte is saved to memory disproves that 
assumption.

I guess I'll have to disassemble it.  The monitor is 2KB and it seems like the 
available commands aren't very powerful given the 2KB size of it.  Perhaps the 
boot code takes up a lot of it.

Since classiccmp archives these messages, I might as well supply the other 
commands in case somebody googles this message in the future:

Connecting a serial cable from COM1 of my PC to the lower port on the back
of the XOR box, set at 9600 baud, 8 data, 1 stop I get a response.  Inside
the box is a little diagram showing settings for 1200 and 9600 baud.

On power up it says:

     XOR DATA SCIENCE
     SYSTEM MONITOR
     VERS 01.85
     F800

F800 - FFFF is where the monitor lives, making it 2 KB.

Anyway, these commands appear to exist:

     D AAAA BBBB                 : dump memory in hex from address AAAA to BBBB.
				  hitting any key stops this mode and is taken
				  as the first keystroke of a new command.

     F AAAA BBBB CC              : fill memory from AAAA to BBBB-1 with byte CC

     G AAAA                      : jump to address AAAA (eg. G F800 reboots)

     H AAAA BBBB CC DD EE FF ... : not sure
				     F 0000 F800 00  (fill memory with 00)
				     H 1000 1010 00<CR>
				  shows 1000, 1001, etc one per line.
				  also, memory 1000 gets set to 00.
				     H 1000 1010 11<CR>
				  shows 1000 alone on a line and memory
				  1000 gets set to 11. Adding more bytes
				  doesn't appear to do anything extra.

     L AAAA                      : shows the current byte at address AAAA
				  and waits for input.  entering CR then
				  moves to the next byte; entering a hex
				  value replaces that value; entering "."
				  exits this mode.

     M AAAA BBBB CCCC            : block move from AAAA to BBBB for CCCC bytes

     V AAAA                      : dumps memory in ASCII, 64 chars/line,
				  stopping after each 24 lines, waiting for
				  a CR.  Hitting space instead of CR stops
				  this mode.

     X                           : gets a "Bank ?" message.  Hitting 0 seems
				  like no problem, 1 causes a hang.

The spaces aren't entered -- the parser enforces them.  You can enter
fewer than four (or two for byte values) nibbles by hitting CR when the
given field is complete, eg

     F10<CR>20<CR>3<CR>

will fill bytes 10 to 1F with the value 03.

I'm not sure how the disk is booted.




More information about the cctalk mailing list