VOGONS


Reply 80 of 1037, by elianda

User metadata
Rank l33t
Rank
l33t

Edit: I got the remote debugger going.

It basically freezes as well. I can not run single step as this would require the original source project.

Last edited by elianda on 2019-08-30, 20:22. Edited 1 time in total.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 81 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
elianda wrote:

Edit: I got the remote debugger going.

Good, put the attached SIV 5.41 Beta-22 .PDB file in the same location as SIV32L.exe on local system.

Try putting breakpoints on cpu_setup_other() + cpu_get_maker() + cpu_is_cyrix() + cpu_cyx_read(). To look at the CPU block set a watch on smg->cpu.

Attachments

  • MSVC 6 Remote Debug.png
    Filename
    MSVC 6 Remote Debug.png
    File size
    16.61 KiB
    Views
    1066 views
    File comment
    MSVC 6 Setup
    File license
    Public domain
Last edited by red-ray on 2019-08-30, 22:37. Edited 2 times in total.

Reply 82 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
GigAHerZ wrote:
red-ray wrote:
GigAHerZ wrote:

Did one more run with the 486DLC-40. Not exactly right...

Thank you, so the Cyrix detect code must need adjusting. Please post the Menu->Hardware->CPUID->CPU-0 screen or the save file from doing Menu->File->Save Local.

There you go!

Thank you, but the text is truncated and I can't read the last number, press [Copy], paste the text into notepad and post the text please.

Reply 83 of 1037, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie
red-ray wrote:

Thank you, but the text is truncated and I can't read the last number, press [Copy], paste the text into notepad and post the text please.

There you go!

Attachments

  • Filename
    486dlc_cpu.txt
    File size
    1.21 KiB
    Downloads
    52 downloads
    File license
    Fair use/fair dealing exception

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 84 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
GigAHerZ wrote:

There you go!

Thank you, I pasted the text into a SIV save file, recreated the issue and expect I have fixed it. In test mode I get as below.

The issue was triggered by Cyrix DIR0 being 23 when the datasheet says it should be 03 😕 I have attached SIV32L 5.41 DLC2-23 please replace Beta-22 with it and let me know how it does.

DLC2-23 should also get the speed correct, out or interest what does Menu->Help->Conversions->CPU MHz report?

Regards, Ray

file.php?id=67741

Attachments

  • Cx486_DLC2.png
    Filename
    Cx486_DLC2.png
    File size
    71.09 KiB
    Views
    1053 views
    File comment
    SIV running is test mode
    File license
    Public domain
Last edited by red-ray on 2019-08-31, 09:30. Edited 1 time in total.

Reply 85 of 1037, by elianda

User metadata
Rank l33t
Rank
l33t

So just debugging with the PDB file is less helpful than thought.
I wanted to execute to the location where the string "Process No CPUID Instruction" is written to the console, but one can not search in the disassembly window. It is the last string written to the log before it freezes.

Every reboot into windows on the 386 takes 3+ minutes and I already had to reset the machine a lot. When it freezes the remote debugger is not helpful at all as it thinks the process is currently in a system call and waits.

Can you give me a memory location relative to the entry point where "Process No CPUID Instruction" is written? It would be a good start.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 86 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
elianda wrote:

Can you give me a memory location relative to the entry point where "Process No CPUID Instruction" is written? It would be a good start.

not really as it will be different on your W95 system to any system I have. Looking at the code it's as below, so put a breakpoint on cpu_setup_other()

red-ray wrote:

Try putting breakpoints on cpu_setup_other() + cpu_get_maker() + cpu_is_cyrix() + cpu_cyx_read(). To look at the CPU block set a watch on smg->cpu.

Last edited by red-ray on 2019-08-31, 13:09. Edited 1 time in total.

Reply 87 of 1037, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Close enough! (Y)

Gonna switch back to 386. Will make a run with that as well for fun. 😀

Attachments

  • 486dlc.png
    Filename
    486dlc.png
    File size
    13.61 KiB
    Views
    1004 views
    File license
    Fair use/fair dealing exception

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 88 of 1037, by elianda

User metadata
Rank l33t
Rank
l33t
red-ray wrote:
elianda wrote:

Can you give me a memory location relative to the entry point where "Process No CPUID Instruction" is written? It would be a good start.

not really as it will be different on your W95 system to any system I have. Looking at the code it's as below, so put a breakpoint on cpu_setup_other()

red-ray wrote:

Try putting breakpoints on cpu_setup_other() + cpu_get_maker() + cpu_is_cyrix() + cpu_cyx_read(). To look at the CPU block set a watch on smg->cpu.

Once again, without a .c source file the Debugger shows Disassembly ONLY. The PDB file only resolves symbol names in the Disassembly. The Disassembly can not be searched for symbol names in VC6 the only thing I can do is manually scroll and look what it shows.
I do not see any C code or C structures where I can set break points.

Due to the size of the program it is basically impossible to find the call to cpu_setup_other() manually by scrolling through the disassembly.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 89 of 1037, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Unfortunately the siv can't load up it's ui on 386dx. It hangs the whole computer.
But before it does, it is able to generate the log file, so there you go.

Attachments

  • Filename
    siv_dbgout.log
    File size
    2.67 KiB
    Downloads
    53 downloads
    File license
    Fair use/fair dealing exception

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 90 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
GigAHerZ wrote:

Unfortunately the siv can't load up it's ui on 386dx.

Thank you for youe testing on the486DLC2 and the 386DX report, elianda sees the same issue and we are trying to figure out why.

At lest SIV now get's the 486DLC2 correct. Compared to the 386DX issue that was trivial to fix 😁 .

The good news is that given SIV runs OK with the 486DLC2 CPU in the same system then it must be something about 386 CPUs that causes the issue, if only I had one here....

elianda wrote:

Due to the size of the program it is basically impossible to find the call to cpu_setup_other() manually by scrolling through the disassembly.

Can't you do as below?

Attachments

  • cpu_setup_other.png
    Filename
    cpu_setup_other.png
    File size
    11.06 KiB
    Views
    995 views
    File comment
    MSVC 6 setup
    File license
    Public domain

Reply 91 of 1037, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

Obviously real hardware would be prefered but would it be useful to load up 95 on a 386 using pcem to troubleshoot the issue?

How To Ask Questions The Smart Way
Make your games work offline

Reply 92 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
GigAHerZ wrote:

Unfortunately the siv can't load up it's ui on 386dx.

I have just uploaded SIV 5.41 Beta-23 which should be OK on your Intel 386DX, is it?

The lockup was happening in the code that measured the CPU speed so for Beta-23 this is not used and no speed will be reported.

I have found and fixed the root cause of the issue and SIV 5.41 Beta-24 should now report your Intel 386DX speed, does it?

DosFreak wrote:

Obviously real hardware would be prefered but would it be useful to load up 95 on a 386 using pcem to troubleshoot the issue?

Thank you for the thought, but I suspect this would not help. We found that the issue is within the CPU speed measuring code that is used on CPUs that don't have TSC support.

GigAHerZ tested Cyrex486DLC2 (OK) and Intel i386DX (Has issue) CPUs iusing the same motherboard, neither have TSC support so I suspect it's down to a timing issue which is unlikely to show up in in a VM.

Last edited by red-ray on 2019-09-01, 00:22. Edited 1 time in total.

Reply 93 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
elianda wrote:

Due to the size of the program it is basically impossible to find the call to cpu_setup_other() manually by scrolling through the disassembly.

Again thank you for all your help in tracking down this issue. I hope that what you have learnt about MSVC 6 remote debugging will be useful. BTW the output from such as -DBGINI should be output to the MSVC output window rather than a file, is it?

I think I have found out what went worky and fixed it. Would you try a test SIV on your i386 please?

Reply 94 of 1037, by elianda

User metadata
Rank l33t
Rank
l33t

I can do that. The previous version is currently still running in the benchmark loop...

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 95 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
elianda wrote:

I can do that. The previous version is currently still running in the benchmark loop...

Great, I sent it via Skype, is it stuck again? I think it will loop 2^32 times so will about 28 days to finish 😳

Reply 96 of 1037, by feipoa

User metadata
Rank l33t++
Rank
l33t++

SIV32O beta24 on NT 3.51 running NexGen PF110. CPU Speed displays correctly!

Attachments

  • Filename
    SIV_NEXGEN-NT351-B24.zip
    File size
    92.88 KiB
    Downloads
    60 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    SIV_DBGOUT.log
    File size
    5.01 KiB
    Downloads
    49 downloads
    File license
    Fair use/fair dealing exception
  • NexGen-PF110-beta24.PNG
    Filename
    NexGen-PF110-beta24.PNG
    File size
    20.08 KiB
    Views
    941 views
    File license
    Fair use/fair dealing exception

Plan your life wisely, you'll be dead before you know it.

Reply 97 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote:

SIV32O 5.41 Beta-24 on NT 3.51 running NexGen PF110. CPU Speed displays correctly!

Thank you for testing the beta and posting the results, all the tricky bits worked ideally. The only issue was that for CPUID 1 your CPU returned 00000504 when I was expecting 000005FF which is what elianda's Nx586-P90 returns.

Comparted to the first run SIV found the name from the BIOS along with the version and date, is AMI NXPCI W.05.09 10/10/94 what the system reports when it posts? SIV also found the Matrox Millennium G200 SD PCI and reported it's clocks. I have adjusted Beta-25 to allow for the model being 0 rather than 15 and will release it in a while. I can't do much more 'till I get the Nexgen 82C500/1 Nx586 Chipset - Vendor ID 1074-4E78 datasheet.

Below you can see below from Beta-24 SIV works OK on an i386, but SIV took about 41 seconds to start-up! It would be good if you tried it on your SXL2-66. It's a shame NT4 won't play, maybe a clean install would. If you don't have NT then SIV should do OK on W9x.

If NT4 won't then I would hope NT 3.51 would. BTW which shell do you have on your NT 3.51 systems? If it's not the "New Shell" if you switch then the SIV32L screens may be OK. I also find it much easier to use as it's much the same as NT4/W9x and such as Right/Click are supported.

file.php?id=67833&mode=view

Attachments

  • i386.png
    Filename
    i386.png
    File size
    946.42 KiB
    Views
    930 views
    File comment
    SIV worked OK on an i386
    File license
    Public domain

Reply 99 of 1037, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote:

There is an NT 4.00 shell for NT 3.51? Where do I get this?

Basically yes, see https://www.google.com/search?q=NT+3.51+newshell. I recall once installed it reports NT 4.00 rather than NT 3.51 so I needed to adjust the SIV start-up for this. As to where it came from I can't remember, I suspect I found it on one of my MSDN CDs when I added NT 3.51 support in SIV 4.45 released on 14-May-2014. The easy option is for you to use the attached, see the .WRI wordpad files for how to install it.

I just spotted I have some NT 3.51 Matrox G200 drivers which came from http://ps-2.kev009.com/pcpartnerinfo/ctstips/cf6a.htm

Below shows how SIV decides what to do, note how the NT 3.5x kernel can have the NT 4.0 GUI 😲

BTW do you run NT 3.51 on any other systems?

    if( smb->win_bld > 1060 )                                                   // >= NT 4.00 Kernel ?
{ //
smb->drv_nam = TEXT( "SIVNT4.sys" ); //
} //
else //
if( smb->win_bld > 600 ) // >= NT 3.5n Kernel ?
{ //
smb->drv_nam = TEXT( "SIVNT3.sys" ); //

if( WIN_MAJ < 4 ) // NT 4.00 GUI ?
look &= ~( LOOK_ICON ); // no, there is no Icon Tray
} //
else // == NT 3.10 Kernel
{ //
smb->drv_nam = TEXT( "SIVNT1.sys" ); //

look &= ~( LOOK_OTT | LOOK_ICON ); // remove Only allow True Type fonts + Icon Tray
}

Attachments

  • Filename
    newshell2.zip
    File size
    2.04 MiB
    Downloads
    51 downloads
    File comment
    NT 4.00 shell for 3.51 SP5
    File license
    Public domain