Qbasicnews.com

Full Version: ASM BIOS jibberish
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
on this old comp i got there is a debug mode in BIOS. it gave me the fallowing ASM. can some one make sense of it?
Code:
JMP    065B
MOV    DI,0005
MOV    BX,7C00
MOV    AX,0201
PUSH    DI
INT    13
POP    DI
JAE    0678
XOR    AX,AX
INT    13
DEC    DI
JNZ    0660
MOV    SI,06A3
JMP    064B
MOV    SI,06C2
With the little knowledge i have of ASM, it doesent do anything...?


First command jumps to offset 065B, dunno if it's in the snippet you posted, if it isnt then the code does nothing...


but other then that, it sets some registers, calls interrupt 13 (check it out at ralf brwns interrupt list)

Then I dunno.... does some checks, some conditional jumps, calls int 13 again.... looks weird....
The part you posted reads one sector from the floppy disk and then resets the drive heads.
ok...well i cant figure out how to use the debug to write in asm. it only seems to give out randome code adn display memory segements.

so is that the 'code' used to see if there is a boot disk in the drive?

more fun stuff:
Code:
PUSH    AX
MOV    AH,78
CALL    5F78
CALL    5F90
TEST    AL,26
POP    AX
JNZ    A449
STI    
HLT    
JMP    A446
CLI    
CLD    
CS:    
MOV    DS,[00C6]
PUSHF    
CLI    
INC    BYTE PRT [00CF]
OUT    FB,AL
POPF    BYTE PRT [00CF],01
MOV    CS
PUSH    SS
POP    SP,0378
MOV    AX,0003
INT    10
MOV    DX,0000
CALL    A2E2
CS:    
MOV    BYTE PRT [0086],00
PUSH    CS
POP    ES
MOV    DI,0088
MOV    CX,001E
XOR    AX,AX
REPE
STOSB