[BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Support and general discussion.
Post Reply
Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

[BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Wed 14 Mar, 2018 12:54 am

Hello

I tested QRAM in the four SCAT/SCATsx machines. I found some problems with the EMS and upper memory area.

I don't know if this issue is a bug, a limitation of these bios or some Pcem limitation.

The Award 286 and GW 286CT-GEAR works with both EMS memory and 128kb of UMB memory.
The KMX-C-02 works with SCAT EMS chip using D000-DFFF memory area and there is about 40kb of not contiguous UMB memory.
The SPC-4216P does not even load the EMM.SYS driver (without QRAM) in either E or D memory regions. It locks' up.

Both KMS-C-02 has no F region at all. That bios uses E region instead of F, and SPC-4216P uses from E800 to FFFF.

Here is the CONFIG.SYS that works in Award 286 and GW 286CT-GEAR.
In the KMS-C-02 this works too but the system locks up when I try to load Word for Windows 1.1, unless I disable QRAM.

STACKS=9,512
FILES=40
BUFFERS=40
DEVICE=HIMEM.SYS /MACHINE:2
DEVICE=CLEAREMS.SYS
DEVICE=C:\QRAM\QRAM.SYS R:1 X=E000-EFFF
DEVICE=C:\QRAM\LOADHI.SYS /R:1 EMM.SYS FRAME=E000 EXCLUDE=D000-DFFF
DEVICE=C:\EMM.SYS FRAME=D000
DEVICE=C:\QRAM8\LOADHI.SYS /R:2 C:\SMARTDRV.SYS 448.

I take screeshots of CheckIt 4.1 with three machines:
Attachments
SPC 4216P.png
SPC 4216P UMB memory
SPC 4216P.png (69.4 KiB) Viewed 932 times
KMS-C-02.png
KMS-C-02 UMB memory
KMS-C-02.png (31.69 KiB) Viewed 932 times
AWARD 286.png
Award 286 UMB memory
AWARD 286.png (30.86 KiB) Viewed 932 times

Greatpsycho
Posts: 110
Joined: Tue 22 Mar, 2016 10:03 am
Location: Korea
Contact:

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Greatpsycho » Wed 14 Mar, 2018 5:06 am

Fenix77 wrote:
Wed 14 Mar, 2018 12:54 am
STACKS=9,512
FILES=40
BUFFERS=40
DEVICE=HIMEM.SYS /MACHINE:2
DEVICE=CLEAREMS.SYS
DEVICE=C:\QRAM\QRAM.SYS R:1 X=E000-EFFF
DEVICE=C:\QRAM\LOADHI.SYS /R:1 EMM.SYS FRAME=E000 EXCLUDE=D000-DFFF
DEVICE=C:\EMM.SYS FRAME=D000
DEVICE=C:\QRAM8\LOADHI.SYS /R:2 C:\SMARTDRV.SYS 448.
Please remove DEVICE=EMM.SYS FRAME=D000 line under DEVICE=C:\QRAM\LOADHI.SYS /R:1 EMM.SYS FRAME=E000 EXCLUDE=D000-DFFF like below and test again.
STACKS=9,512
FILES=40
BUFFERS=40
DEVICE=HIMEM.SYS /MACHINE:2
DEVICE=C:\QRAM\QRAM.SYS R:1 X=E000-EFFF
DEVICE=C:\QRAM\LOADHI.SYS /R:1 EMM.SYS FRAME=E000 EXCLUDE=D000-DFFF
DEVICE=C:\QRAM8\LOADHI.SYS /R:2 C:\SMARTDRV.SYS 448.
And you need not use CLEAREMS.SYS when using QRAM.SYS as UMB driver. It's necessary when using UMB_DRVR.SYS as UMB driver.

Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Wed 14 Mar, 2018 7:00 pm

Hello

Thanks for your reply. I'm going to test these machines without CLEAREMS.SYS, and i did not notice EMS driver was loaded twice. I am using MS-DOS 3.31, for that reason I chose to use QRAM instead UMB_DRVR.SYS.

Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Wed 14 Mar, 2018 9:56 pm

I tested the SPC-2016P and it lock's up when the EMS driver is loading. Even if no UMB driver is used. I put HIMEM.SYS after EMS.SYS but it still freezes.
The KMS-C-02 may lock up with a Windows 2.11 application like Word for Windows but not with applications that use conventional memory only, however, if I remove QRAM from config.sys and use the D memory region for EMS page frame, it works correctly.

Here some screenshots of the SPC-2016P and the new config.sys
I booted from MS-DOS 3.2 floppy disk after the machine locked up.
Attachments
booted from MS-DOS 3.2 boot disk.png
The config.sys file after booting from a bare DOS 3.2 disk
booted from MS-DOS 3.2 boot disk.png (32.14 KiB) Viewed 825 times
SPC-2016P crash.png
Crash when loading EMS driver
SPC-2016P crash.png (91.52 KiB) Viewed 825 times

Greatpsycho
Posts: 110
Joined: Tue 22 Mar, 2016 10:03 am
Location: Korea
Contact:

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Greatpsycho » Thu 15 Mar, 2018 12:28 am

Fenix77 wrote:
Wed 14 Mar, 2018 9:56 pm
I tested the SPC-2016P and it lock's up when the EMS driver is loading. Even if no UMB driver is used. I put HIMEM.SYS after EMS.SYS but it still freezes.
It seems to be a problem with EMS driver. Show EMS driver's offset 0x569c to 0x569e with hex editor. If values are 0x24 0x0f 0x50, change values to 0x50 0x24 0x0f and save.

And I have updated version of SCAT EMS driver that doesn't have tis problem. If you want to get it, please send your e-mail address via PM to me.

Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Thu 15 Mar, 2018 2:53 am

Many Thanks!!

The SPC-2016P machine works correctly with the new EMS driver, it works exactly like the Award 286 and GW 286CT GEAR, and for some reason, now CheckIt now detects the F region correctly.

I never thought it could be a driver issue.

And for the KMS-C-02 ,Qram is detecting 128kb of free UMB, but , maybe for some reason the SCATsx chip, uses the B000-B7FF or C800-CFFF later on, generating the freeze. These memory areas and E000-EFFF are reported as free by QRAM.
I know D or E can be the EMS page frame or used as UMB memory, but I don't know if the other regions can be used by video card or the hard disk.

Well, I think the emulation of these machines are near complete.

May be in four or five years, the FPU and printer emulation can be added to recreate all the functions of the real hardware.
It could be interesting because, Pcem may contain the history of the 8086 based machines until the Pentium MMX era.

Greatpsycho
Posts: 110
Joined: Tue 22 Mar, 2016 10:03 am
Location: Korea
Contact:

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Greatpsycho » Thu 15 Mar, 2018 7:19 am

Fenix77 wrote:
Thu 15 Mar, 2018 2:53 am
And for the KMS-C-02 ,Qram is detecting 128kb of free UMB, but , maybe for some reason the SCATsx chip, uses the B000-B7FF or C800-CFFF later on, generating the freeze. These memory areas and E000-EFFF are reported as free by QRAM.
I know D or E can be the EMS page frame or used as UMB memory, but I don't know if the other regions can be used by video card or the hard disk.
I can't reproduce the problem you're experiencing. Can you send me your KMX-C-02 hard disk image and configuration file by e-mail?

Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Thu 15 Mar, 2018 9:31 pm

Hello.

I sent you the 30mb IDE Hard Disk image file I use with SCAT machines. The config is in the CONFIG.SYS file.

Greatpsycho
Posts: 110
Joined: Tue 22 Mar, 2016 10:03 am
Location: Korea
Contact:

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Greatpsycho » Fri 16 Mar, 2018 11:58 am

Fenix77 wrote:
Thu 15 Mar, 2018 9:31 pm
Hello.

I sent you the 30mb IDE Hard Disk image file I use with SCAT machines. The config is in the CONFIG.SYS file.
I've tested what you provided and it seems not enough UMB provided to SMARTDRV.SYS required to work properly. Your SMARTDRV.SYS requires at least 64KB contiguous memory block to work but you loaded it in 32KB UMB block.
I've changed QRAM and SCATEMM.SYS parameter to provide more than 64KB contiguous UMB block and moved SMARTDRV.SYS to there, your problem seems to be disappeared. And I suggest if you want to use SMARTDRIVE, use SMARTDRIVE provided by DOS 6.x or Windows 3.1x.
If you have any other problems, please let me know.

Fenix77
Posts: 59
Joined: Fri 01 Sep, 2017 11:59 am

Re: [BUG] SPC-4216P, KMX-C-02. EMS and UMB memory

Post by Fenix77 » Thu 22 Mar, 2018 6:19 pm

Hello again!

It may be a bit offtopic but..

I recently discovered That AMI 286 from 86box uses Neat chipset and the AMI 286 fom PCEM is a PC Chips motherboard and uses Hedaka D60 chip.
The Hadaka chip does not support UMB memory mapping and the last 384kb of memory cannot be mapped as either XMS or EMS.
XMS memory amount can be modified in 512kb increments only.


The BIOS has an EMS option, but it only can be 0 or disabled.
My question is: Is it possible to implement EMS memory support in this PC-chips machine, like there is in the Thoshiba T3100.
I don not know how difficult it could be because I'm not a programmer.

Thanks!

Post Reply