Very cool script Paul,Need to move $CRLF=chr(13)+chr(10) from where it is to under GLOBALs. It is not defined in non-Dell section otherwise and you get a DEBUG.SCR without the CRLFs - hangs the DOS box.
Bryce, (and others)
Debug is used here to dump the information in the BIOS ROM about the computer. The DEBUG.SCR file is a set of keystrokes that we < to DEBUG.EXE and then capture the result.
D is for Dump and it displays memory at a starting address. The range is the amount of mem to dump. The default range is 0x180.
Q is quit. So the script runs DEBUG.EXE, Dumps a small piece of memory and then Quits. The output file is in the format of
Segment:offset/\/\un0ln0/\un1ln1/\...-../\un15ln15/\/\/\c0c1c2....c15CRLF
where
segment:offset = the absolute address
/\ = space
unX = upper nibble of byte X
lnX = lower nibble of byte X
cX = character of byte X
X is the absolute address of the byte. eg:
0ADF:0100 06 F8 96 01 74 09 50 56-9A E0 01 C5 10 5E 58 FF ....t.PV.....^X.
at address 0adf:0100 is byte 0x06 which looks like "." (it doesn't really, but that is what DEBUG.EXE shows for non-displayable characters)
as an aside... 0adf:0100 translates to 0adf0 + 100 = 0aef0 in physical memory. This is the 44,784th btye (prob on the first sim)
I love assembly!
cj