IBM 5100 Restoration in progress
Santo Nucifora
santo.nucifora at gmail.com
Thu Mar 19 07:22:11 CDT 2015
Hi Christian,
Thank you, I did find the dump yesterday and to answer your question, I do
have 32k of memory (two 16k boards).
It is my understanding that if an A gets printed, the A test completed
successfully and it is dying at the B test where the last part of the test
is to print the letter B on screen.
We certainly need a hex dump for the 5100 but I've looked around and found
nothing. I don't suppose I can dump my Executable ROS in the condition my
machine is in.
Is there a list of the Assembler opcodes I can reference?
Thanks again for your help,
Santo
On Wed, Mar 18, 2015 at 12:23 PM, Christian Corti <
cc at informatik.uni-stuttgart.de> wrote:
> 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