Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

SB Live DOS emulation - my fight with SERR# to NMI routing (Developers)

posted by RayeR Homepage, CZ, 20.05.2008, 02:17

> Maybe DMACHK from UMBPCI package?

Well, it may be good start point. I tried DMACHK with various memory managers and OSes DOS 6.22, 7.1. Results can be divided to 2 groups.

1) DOS safe mode or himem.sys / himemx.exe only, regardless DOS version always reported:

ISA-DMA-Checker for UMBPCI V1.13, (c)1999-2004 by Heiko Nocon, Uwe Sieber
http://www.uwe-sieber.de

 North-Bridge:  Vendor: 8086  Device: 29C0
 South-Bridge:  Vendor: 8086  Device: 27B8

C000-C3FF : write protected
C400-C7FF : write protected
C800-CBFF : write protected
CC00-CFFF : write protected
D000-D3FF : write protected
D400-D7FF : write protected
D800-DBFF : write protected
DC00-DFFF : write protected
E000-E3FF : write protected
E400-E7FF : write protected
E800-EBFF : write protected
EC00-EFFF : write protected


2) Use of himem.sys + emm386 or himem.sys + umbpci.sys or jemmex.exe resulted always in hang during the test.

ISA-DMA-Checker for UMBPCI V1.13, (c)1999-2004 by Heiko Nocon, Uwe Sieber
http://www.uwe-sieber.de

 North-Bridge:  Vendor: 8086  Device: 29C0
 South-Bridge:  Vendor: 8086  Device: 27B8

EMM386 is loaded

C000-C3FF : write protected
C400-C7FF : write protected
C800-CBFF : write protected
CC00-CFFF : write protected
D000-D3FF : read/write ok, ISA-DMA (hangs here)


In case EMM386 under DOS 7.1 it hanged at
E000-E3FF : read/write ok, ISA-DMA (hangs here)

in case there was only HIMEM.SYS + UMBPCI.SYS it wasn't displayed "EMM386 is loaded" message but hanged in same case. Unfortunatelly DMACHK doesn't report what happened. No CTRL+C/CTRL+ALT+DEL just hardware reset helps.


Then I tried some DOS sound test programs but I didn't heard sfx in any case. Programs hanged or played nothing. I also tested dstest.exe which is a part of HXDOS tests. Result with /v /p options, terminated normally but no sound:

Sound size=12A00
Format: channels=1, samples=44100, bits=16, bytespersec=88200
DirectSoundCreate()=0
IDirectSound:SetCooperativeLevel()=0
IDirectSound:CreateSoundBuffer()=0
IDirectSoundBuffer:SetFormat()=0
IDirectSoundBuffer:Lock(0, 5622, ...)=80070057
IDirectSoundBuffer:Release()=0
IDirectSound:Release()=0


With /v option it hanged but can be breaked by CRTL+BREAK

Sound size=12A00
Format: channels=1, samples=44100, bits=16, bytespersec=88200
DirectSoundCreate()=0
IDirectSound:SetCooperativeLevel()=0
IDirectSound:CreateSoundBuffer()=0
IDirectSoundBuffer:Play()=0
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]
..IDirectSoundBuffer:GetCurrentPosition()=0 [    0   562]


It seems that sound buffer position is not updating, no samples are clocked out and so it locks in endless loop, nevet request to load another part of buffer...

---
DOS gives me freedom to unlimited HW access.

 

Complete thread:

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