diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2009-12-13 13:04:17 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2009-12-13 13:04:17 -0500 |
commit | dfefeb543866eb74e0668fdec1fe496bb9ffb860 (patch) | |
tree | 0d1ce9d969dcc293c5e4094c85d9b7b21981d793 /src/disk.c | |
parent | d43e1788502dc99d46bb634424ac70137874f517 (diff) | |
download | seabios-hppa-dfefeb543866eb74e0668fdec1fe496bb9ffb860.zip seabios-hppa-dfefeb543866eb74e0668fdec1fe496bb9ffb860.tar.gz seabios-hppa-dfefeb543866eb74e0668fdec1fe496bb9ffb860.tar.bz2 |
Distinguish between debug reports for unimplemented vs invalid calls.
Don't use "fail" in the debug output - as this confuses users.
When reporting on an invalid parameter - use the word "invalid".
When reporting on an unimplemented call - state it is unimplemented.
Add separate debug levels for unimplemented vs invalid calls.
Also, increase the debug level of several entry points.
Diffstat (limited to 'src/disk.c')
-rw-r--r-- | src/disk.c | 21 |
1 files changed, 16 insertions, 5 deletions
@@ -28,15 +28,26 @@ __disk_ret(struct bregs *regs, u32 linecode, const char *fname) else SET_BDA(disk_last_status, code); if (code) - __set_code_fail(regs, linecode, fname); + __set_code_invalid(regs, linecode, fname); else set_code_success(regs); } +void +__disk_ret_unimplemented(struct bregs *regs, u32 linecode, const char *fname) +{ + u8 code = linecode; + if (regs->dl < EXTSTART_HD) + SET_BDA(floppy_last_status, code); + else + SET_BDA(disk_last_status, code); + __set_code_unimplemented(regs, linecode, fname); +} + static void __disk_stub(struct bregs *regs, int lineno, const char *fname) { - __debug_stub(regs, lineno, fname); + __warn_unimplemented(regs, lineno, fname); __disk_ret(regs, DISK_RET_SUCCESS | (lineno << 8), fname); } @@ -426,7 +437,7 @@ disk_134502(struct bregs *regs, struct drive_s *drive_g) static void disk_1345XX(struct bregs *regs, struct drive_s *drive_g) { - disk_ret(regs, DISK_RET_EPARAM); + disk_ret_unimplemented(regs, DISK_RET_EPARAM); } // IBM/MS lock/unlock drive @@ -648,7 +659,7 @@ disk_1349(struct bregs *regs, struct drive_s *drive_g) disk_ret(regs, DISK_RET_SUCCESS); return; } - set_fail(regs); + set_invalid(regs); // always send changed ?? regs->ah = DISK_RET_ECHANGED; } @@ -699,7 +710,7 @@ disk_134e(struct bregs *regs, struct drive_s *drive_g) static void disk_13XX(struct bregs *regs, struct drive_s *drive_g) { - disk_ret(regs, DISK_RET_EPARAM); + disk_ret_unimplemented(regs, DISK_RET_EPARAM); } static void |