Hello Luchezar,

>> My god - what a sad story.
>>
>> boot a kernel that works.
>> load device=softice.
>> insert floppy with bad kernel.
>>
>> SIce>boot
>>
>> SIce still is in memory, and will popup at the faulting instruction,
>> or you can insert some int(3) to trace the offending code.

LG> Sorry, Tom - as you know, I've never been a professional
LG> programmer, only an amateur here... Actually, I'm an electronics
LG> engineer and never studied programming or "computer science" ;-)

nothing to worry about - I studied physics, and learned programming by
doing.

details how to fix a 'kernel doesn't boot' bug with softice;
I used that extensively when modifying MBR's, bootsectors, or moving
the kernel into HMA (which didn't work the first few hundred tries)

take a working kernel (possibly from HD), which loads SoftIce.

put a floppy with the faulty kernel into A:
go into softice, enter

  :BPINT 3  (if you put a __int__(3) breakpoint somewhere in the kernel
             startup) or
  :BPINT 13  (if you want to see disk I/O)

            you can also set a back trace, so on 'illegal instruction'
            you have a 'COME FROM'
  :BPR 0:0 a000:0 t
  
  :BOOT

this will 'soft' reboot the maschine, but SIce remains in memory.

now the faulty kernel is loaded from A:, and eventually executes
__int__(3) and breaks into softice, so you can step the kernel.

at least it will catch the illegal instruction, and you can see WHERE,
WHAT and WHY.

if you had BPR trace enabled you can see 'come from' with
  :SHOW 1

Tom





-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to