On Mon, 2025-05-12 at 16:42 +0200, tom ehlert via Freedos-devel wrote:
> Hallo Herr Eric Auer via Freedos-devel,
> 
> am Montag, 12. Mai 2025 um 02:03 schrieben Sie:
> 
> 
> > Hi!
> 
> > > i posted the error and a screen shot of it in the kernel issues
> > > thing
> > > https://github.com/FDOS/kernel/issues/205
> 
> > Let me type this screenshot message over and comment on it:
> 
> > Immediately after loading the "Use!UMBs" Upper Memory Block Manager
> > which "Works on any PC/XT/AT, either with or without Extended or
> > Expanded Memory" (Marco van Zwetselaar, public domain 1991, v2.2)
> > there is a message:
> 
> > Invalid Opcode at 9063 E602 0046
> > 15A3 C70D 6B06 3705 8B00
> > FC46 463B 75F0 3B05 F27E
> > dos mem corrupt, first_mcb=02b6
> > prev  9fbf:0000 | 4d 08 00 40  46 00 00 00  53 43 00 00  00 00 00
> > 00
> > notMZ e600:0000 | 00 00 00 00  00 00 00 00  00 00 00 00  00 00 00
> > 00
> 
> > PANIC: MCB chain corrupted
> > System halted
> 
> > Some context from RBIL:
> 
> > Format of DOS memory control block:
> > Offset  Size    Description     (Table 01628)
> >   00h    BYTE    block type: 5Ah if last block in chain, otherwise
> > 4Dh
> >   01h    WORD    PSP segment of owner or special flag value (see
> > #01629)
> >   03h    WORD    size of memory block in paragraphs
> >   05h  3 BYTEs   unused by MS-DOS
> > ...
> >   08h  8 BYTEs   ASCII program name if PSP memory block or DR DOS
> > UMB,
> >                    else garbage
> >                  null-terminated if less than 8 characters
> 
> > Notes:  the next MCB is at segment (current + size + 1)
> >          under DOS 3.1+, the first memory block is the DOS data
> > segment,
> >            containing installable drivers, buffers, etc.  Under DOS
> > 4.0+ it is
> >            divided into subsegments, each with its own memory
> > control block
> >            (see #01633), the first of which is at offset 0000h.
> >          for DOS 5+, blocks owned by DOS may have either "SC" or
> > "SD" in bytes
> >            08h and 09h.  "SC" is system code or locked-out inter-
> > UMB memory,
> >            "SD" is system data, device drivers, etc.
> > ...
> 
> > (Table 01629)
> > Values for special flag PSP segments:
> >   0000h  free
> > ...
> >   0008h  belongs to DOS
> > ...
> 
> > Format of MS-DOS 5+ UMB control block:
> > Offset  Size    Description     (Table 01630)
> >   00h    BYTE    type: 5Ah if last block in chain, 4Dh otherwise
> >   01h    WORD    first available paragraph in UMB if control block
> > at start
> >                    of UMB, 000Ah if control block at end of UMB
> >   03h    WORD    length in paragraphs of following UMB or locked-
> > out region
> >   05h  3 BYTEs   unused
> >   08h  8 BYTEs   block type name: "UMB" if start block, "SM" if end
> > block in UMB
> 
> > So what do we see here? A non-last MCB starting at 9fbf:0 with
> > special
> > flag value 08 (belongs to DOS) and code "SC" which means "locked-
> > out
> > inter-UMB memory". Size is 4640 paragraphs and DOS expects the next
> > block, which WOULD be the one of the first UMB area, at e600:0, but
> > as you can see, there are only a bunch of 00 bytes here. This could
> > mean that there is no writable memory at that place or that
> > something
> > else is using the memory, which had the effect of overwriting the
> > MCB
> > with 00 bytes. Maybe you have some controller buffer at the
> > address?
> Nice analysis. on first glance:
> 
> USE!UMB should have checked that this memory is indeed writable.
> It seems it's not and that is just a stupid program bug.
> 
> The cool thing is that source is provided, and some genius with too 
> much time
> to spend caould fix this.
> 
> 
> 
> 
> > What exactly is the hardware on which you are running this?
> other then "genuine harris 286 @ 25MHz with 16 MB of ram and @ mb of
> EMS", how would this help you?
ok let me show the mobo
https://theretroweb.com/motherboards/s/pcchips-m218
it is this board exactly with lo-tech ems board and it has 16 mb of 
XMS system ram

> 
> Tom
> 
> 
> 
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel

-- 
founder of yellow rose group 💛️


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to