IBM 5100 Restoration in progress
Christian Corti
cc at informatik.uni-stuttgart.de
Wed Mar 18 11:23:19 CDT 2015
On Wed, 18 Mar 2015, Santo Nucifora wrote:
> execros.asm
> <http://ftp.informatik.uni-stuttgart.de/pub/cm/ibm/ibm5100/execros.asm> doesn't
> exist on the ftp server. If you could send it to me off-line, I would
Sorry, there's a typo: .../ibm/ibm5110/... (instead of 5100). And use FTP
as I said, so just change http:// with ftp:// or use a FTP client.
BTW I had a look at your screen shot. The register contents is as follows:
R0 - varying around $0090
R1 - $0090
R2 - $0000
R3 - $0600
R4 - $0006
R5 - $0202
R6 - $0005
R7 - $05C0
R8 - $00C0
R9..R14 - $0000
R15 - $0005
R13L1 - $7FFF (last RWS address? Do you have 32kB in your machine?)
If your machine really halts at stop 'A', then this is strange. R5 should
contain the screen address for the next character. $0202 should be for the
'C', so the machine might hang at stop 'B'. R15 should contain $00FF.
Having R1 with $0090 implies a negative test instruction at $008C with the
halt instruction at $008E. (R1 is used as link register with conditional
skip instructions. If no skip occurs, the next instruction can be a jump
to a subroutine, and R1 contains the address of the instruction following
that jump. This is automatically done by the CPU).
R3 and R4 might contain the end values after the screen clear routine
(just before the 'A' routine). The 5110 version looks like this:
; Clear display
006C 8F40 LBI R15, #' '
006E 0FFD MLH R15, R15
0070 8D06 LBI R13, #$06
0072 5F51 MOVE (R5)+, R15
0074 C5D7 SBSH R5, R13
0076 F005 BRA $0072 ; -> -$06(R0)
And the 5100 version could be something like this:
8200 LBI R2, #' '
022D MLH R2, R2 ; R2 <- $0000
8406 LBI R4, #$06 ; R4 <- $0006
5231 MOVE (R3)+, R2
C347 SBSH R3, R4
F005 BRA $-6
The screen is cleared from $0200 (begin of screen) up to (excluding) $0600
(end of screen). So R3 contains the address of the first byte after the
screen area.
But to find out what the machine did until this point, I need the
Executable ROS hex dump as described in my last post. Address 0090 is well
within the first 512 bytes so we should get the first couple of diagnostic
routines.
Christian
More information about the cctech
mailing list