Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

CC386 -> SingleFault -> DoubleFault -> TripleFault -> BOOM (Announce)

posted by DOS386, 17.02.2011, 09:20
(edited by DOS386 on 18.02.2011, 03:53)

> 3.89 is out 2011-Feb-13 ... I'll test

Done! :-)

+ [0] BIG crash from 3.88 is fixed (apparently specific to DFLAT thus INSTALLER + INFOPAD)

+ [1] compiler core works (some warnings, but examples do compile and run)

+ [2] INFOPAD improvements look good

-- [3] BIG problem: CTL-BREAK causes beeper + TripleFault, in 3.89 still in, affects all binaries (at least INFOPAD and VALX, new BUG, no problem in 3.74, CTL-C still works in INFOPAD, as opposed to FP IDE)

- [4] Tiny exit problem (related to [3] ?) - INFOPAD causes a beeper "NULL POinter" (without TripleFault) but sometimes only ...

- [5] INFOPAD Out-Of-Memory-BUG (related to [3] ?) when loading a huge file (cca 2/3 of RAM), it loads, but then "Out Of Memory", and then beeper + TripleFault

http://ompldr.org/vN2c4NA/INFOPAD.ZIP (280 KiB)

Fixed 3.88 crash:


00162265061e load_seg_reg(DS, 0x0006): RPL & CPL must be <= DPL
00162265155e load_seg_reg(DS, 0x0006): RPL & CPL must be <= DPL
00162722693e read_virtual_dword_32(): segment limit violation
00162722713e read_virtual_checks(): read beyond limit
00162722733e read_virtual_checks(): read beyond limit
00162722753e read_virtual_checks(): read beyond limit
00162722773e read_virtual_checks(): read beyond limit
00162722796e read_virtual_dword_32(): segment limit violation
00162722816e read_virtual_checks(): read beyond limit
00162722836e read_virtual_checks(): read beyond limit
00162722856e read_virtual_checks(): read beyond limit
00162722876e read_virtual_checks(): read beyond limit
00162722896e read_virtual_checks(): read beyond limit
00162722916e read_virtual_checks(): read beyond limit
00162722936e read_virtual_checks(): read beyond limit
00162722959e read_virtual_dword_32(): segment limit violation
00162722979e read_virtual_checks(): read beyond limit
00162722999e read_virtual_checks(): read beyond limit
00162723019e read_virtual_checks(): read beyond limit
00162723039e read_virtual_checks(): read beyond limit
00162723059e read_virtual_checks(): read beyond limit
00162723079e read_virtual_checks(): read beyond limit
00162723099e read_virtual_checks(): read beyond limit
00162723143e check_cs(0x0018): not a valid code segment !

...

00163688374e check_cs(0x0838): not a valid code segment !
00163688374e interrupt(): segment not present
00163688374e interrupt(): segment not present
00163688374i CPU is in protected mode (active)
00163688374i CS.d_b = 16 bit
00163688374i SS.d_b = 32 bit
00163688374i EFER   = 0x00000000
00163688374i | RAX=0000000000003b8b  RBX=0000000000000000
00163688374i | RCX=0000000000000820  RDX=000000000015d89a
00163688374i | RSP=0000000000012c74  RBP=00000000001561e8
00163688374i | RSI=0000000000044aa0  RDI=0000000000000001
00163688374i |  R8=0000000000000000   R9=0000000000000000
00163688374i | R10=0000000000000000  R11=0000000000000000
00163688374i | R12=0000000000000000  R13=0000000000000000
00163688374i | R14=0000000000000000  R15=0000000000000000
00163688374i | IOPL=0 id vip vif ac vm RF nt of df if tf sf zf af PF cf
00163688374i | SEG selector     base    limit G D
00163688374i | SEG sltr(index|ti|rpl)     base    limit G D
00163688374i |  CS:0008( 0001| 0|  0) 00006c30 0000ffff 0 0
00163688374i |  DS:0000( 0000| 0|  0) 00000000 00000000 0 0
00163688374i |  SS:0820( 0104| 0|  0) 00000000 ffffffff 1 1
00163688374i |  ES:0820( 0104| 0|  0) 00000000 ffffffff 1 1
00163688374i |  FS:0818( 0103| 0|  0) 0015d99c 0000ffff 0 0
00163688374i |  GS:0000( 0000| 0|  0) 00000000 00000000 0 0
00163688374i |  MSR_FS_BASE:000000000015d99c
00163688374i |  MSR_GS_BASE:0000000000000000
00163688374i | RIP=00000000000019df (00000000000019df)
00163688374i | CR0=0x60000011 CR2=0x0000000000000000
00163688374i | CR3=0x00000000 CR4=0x00000200
00163688374i 0x00000000000019df>> retf  : 66CB
00163688374e exception(): 3rd (11) exception with no resolution, shutdown status is 00h, resetting


There are almost 10'000 protection violations before the thing finally desperates and TripleFaults ....

David Lindauber wrote:

> well it works in virtualbox...

Well, for me it (INFOPAD 3.88) "works" inside BOCHS too ... it crashes just like on real hardware, even the garbage on the screen is the same (it's just slower).

:-) There is only one reliable emulator and that's BOCHS :-)

(it's neither perfect nor BUG-free (I still have the mysterious XDMA-BUG, ...), and it's slow, nevertheless, it usually doesn't pretend buggy stuff to be BUG-free ...).

No BOCHS report of the CTL-BREAK-BUG.

I plan a big compiler core correctness and performance test (CC386 new vs CC386 old vs WATCOM vs DGJPP), but it might take some time.

EDIT : fixed BUG in BUG report (CTL-C vs CTL-BREAK)

---
This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft ***

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 110 users online (0 registered, 110 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum