Thank you for this link, yes it helps as I
know now, what these values stand for. Up to now I only guessed that the last two digits are a checksum. In my OP I described it:
The "content" of the loader file (hex) starts at column 10, the last 2 seem to be a checksum.
To "peel" the data out of the hex file I use
/* PEELXF REXX: Peel off loader data from Swiss Micros firware files */
trace 'O'; signal on error
'CALLPIPE (name peelxf sep !) *.:',
'!chop 43', /* no comments */
'!strip', /* no blanks */
'!substr 10;-3', /* no loader data */
'!l', /* no empty lines */
'!*.:'
error:
exit (RC * (RC ^= 12 & RC ^= 8)) /* RC = 0 if EOF */ |
That is Piping, but probably you easily see what it does.
I'm still not entirely clear |
OK, not OK. If so I failed to explain it intelligibly. With the risk to abuse or offend you by tellling now well known truisms I try once more: You have a PC, probably yes, with its CPU and peripherals (hard disk, monitor, keybord, printer, younameit). May be you know Virtual Machine (VM) --
https://en.wikipedia.org/wiki/Virtual_machine -- so you have a system on your PC that runs a PC, may be with an elder OS you used before. It has some advantages so it is widely used today. The VM's devices exist only virtually, they are emulated, for example the hard disk is a file containing the data the real machine had on its real disk. This is not only possible with PCs, also other systems may be virtualised, mainframes --
http://www.hercules-390.eu -- or pocket calculators --
https://hp.giesselink.com . Common to this emulators, you need the OS of the original system to run it on the simulated platform.
The emulator is one thing, the OS to run with it the other. Typically the OS is
not included within the emulator distribution -- with few exceptions. One I know is V41 -- the first here:
http://www.hp41.org/Emulation.cfm -- and the clones offered by SwissMicros. Their devices are the ARM platform to run the emulator, their published .hex files are loader files with revisions of the emulator, the .hex files
also contain the origianl OS (firmware, copy of the ROM content) that will be emulated (run with the emulator).
Once more: I am
not interested in the SwissMicros emulator, I have one of my own running under the IBM mainframe OS called VM (VM/CMS, today z/VM). I am interested in the way, SwissMicros concealed or encrypted the original ROM in their .hex files.
It is normal to be confused when you get it touch with virtual machines for the first time. It's so easy to say 'disk' what in fact is a file representing a disk's content. Same with ROM, or copy of the ROM? No, it's the copy of a ROM content in a file. I say, emulators are the poor men's hardware, you may play with systems you never could afford in real.
Hopefully you have less questions now ;)