Difference between revisions of "Talk:VAXstation 100 firmware notes"

From Computer History Wiki
Jump to: navigation, search
(Hardware vs firmware?: new section)
(Hardware vs firmware?: Makes sense)
 
(One intermediate revision by one other user not shown)
Line 20: Line 20:
  
 
Some of the stuff that just got added (register definitions, etc) seems like it might be hardware, which maybe should go into [[VAXstation 100]]? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:06, 27 February 2023 (CET)
 
Some of the stuff that just got added (register definitions, etc) seems like it might be hardware, which maybe should go into [[VAXstation 100]]? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:06, 27 February 2023 (CET)
 +
 +
: The hardware registers *are* documented in the Engineering Specification, but exactly how the firmware treats them is not.  These are my running notes to understand how the firmware works at runtime, in particular information useful for making an emulator.  Maybe in the end some stuff can be moved over. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 17:23, 27 February 2023 (CET)
 +
 +
:: Yeah,  how the firmware treats them definitely belongs here. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:42, 27 February 2023 (CET)

Latest revision as of 17:43, 27 February 2023

Source?

I assume the source for the firmware has been lost? Given that this is the bootstrap, I'm going to guess that it was originally in assembler? Do you have a dis-assembled version?

The results of dis-assembly can be quite tasteful; here and here are two RL11 bootstraps for which the source had been lost; I dis-assembled and commented (to make them readable/understandable; I checked that the assembler output matched the binary I started with) them, and I think they are pretty good. The first is commented a little better; I read through the code in the second in order to be able to turn the magic numbers in the disassembled code into named constants, but I didn't do much more than that to make it readable.

Do you have any of the code (in any form) which was down-loaded into them once they had booted? Jnc (talk) 23:48, 18 February 2023 (CET)

I'm adding comments to this as I go: https://github.com/larsbrinkhoff/absolutely-not-a-vaxstation100-emulator/blob/stuff/firmware-5.00.txt
I haven't added labels etc, so it's not in any shape to be reassembled. I have done plenty of source code reconstructions for ITS binaries, but I'm not sure I'll make the effort for this one. My main priority will be to get old X versions running; Jim Gettys seems willing to let go of his old tape files which should be interesting.
X10 R3 and R4 have binary VS100 blobs. I know someone who has X10R4 running on a real VS100 and VAX, so I know it's in good shape. Larsbrinkhoff (talk) 00:04, 19 February 2023 (CET)
Thanks for indulging my curiosity! Yes, that's too much code to be worth the effort to do a good job.
It will be interesting to see what's on Gettys' old tapes! Who's reading them, BTW? Jnc (talk) 00:45, 19 February 2023 (CET)
He says the tapes have already been read. I don't know in what form the data is stored now. Maybe untarred file trees, or something. Fingers crossed, we will see soon. Larsbrinkhoff (talk) 06:30, 19 February 2023 (CET)

Hardware vs firmware?

Some of the stuff that just got added (register definitions, etc) seems like it might be hardware, which maybe should go into VAXstation 100? Jnc (talk) 17:06, 27 February 2023 (CET)

The hardware registers *are* documented in the Engineering Specification, but exactly how the firmware treats them is not. These are my running notes to understand how the firmware works at runtime, in particular information useful for making an emulator. Maybe in the end some stuff can be moved over. Larsbrinkhoff (talk) 17:23, 27 February 2023 (CET)
Yeah, how the firmware treats them definitely belongs here. Jnc (talk) 17:42, 27 February 2023 (CET)