Page 1 of 1

Malfucntion in CPU routines after inplentation

Posted: Mon Sep 19, 2005 12:28 pm
by SebMcClouth
I've inplented the CPU-routines by Hans Lunsing from the ABC packets in the qbinux core. The old version of the core (a library) worked just fine. But with the new stuff (modules) it gives the wrong processor.

The Type is located in qbinux.bi and the rest in a module file called setup.bas.

grtz
Seb

Posted: Mon Sep 19, 2005 12:45 pm
by {Nathan}
try asm

Posted: Mon Sep 19, 2005 12:53 pm
by SebMcClouth
The code is asm...

grtz

Posted: Mon Sep 19, 2005 2:25 pm
by Z!re
It's harder to determine todays CPU types in a 16bit environment.

Posted: Mon Sep 19, 2005 2:43 pm
by SebMcClouth
Yes I know, but the code has proved to work... just after inplenting... it states that my Laptop has a 486SX, and MSD tells me I have a 486DX, so did the code tell me before inplenting...

grtz

Posted: Mon Sep 19, 2005 4:06 pm
by {Nathan}
why not uploading it somewhere and seeing if it works for us?

Posted: Mon Sep 19, 2005 4:30 pm
by SebMcClouth
As soon as I have the rest of the core along with it... you are free to try!!

grtz
Seb

Posted: Mon Sep 19, 2005 11:42 pm
by Michael Calkins
The main differene between an SX and DX is the FPU, right? maybe there are other differences... I read some stuff on the differences a while back, but forgot exactly.
You're code checks for a FPU?
Regards,
Michael

Posted: Tue Sep 20, 2005 4:16 am
by SebMcClouth
Yes it does. When the CPU-program runs stand-alone it detects my FPU...

oh btw SX and DX have nothing to do with an FPU... I had a 386DX which didn't have a FPU... I'll still have that processor sumwhere...

grtz
Seb

Posted: Tue Sep 20, 2005 9:07 pm
by Michael Calkins
oh btw SX and DX have nothing to do with an FPU... I had a 386DX which didn't have a FPU... I'll still have that processor sumwhere...
I am using as my information source an A+ Certification prep book.

As regards 386s, you are correct. The 80386DX (known as an 80386) was the better version. The 80386SX was a cheap version meant to be more affordable, and meant to be more adaptable to 16 bit architectures. The DX had a 32 bit external data bus, etc, and could access 4GB of physical memory. The SX was a 16 bit/32 bit hybrid. On the inside, the SX closely resembled the DX, but on the outside it differed. The SX had a 32 bit internal data bus, but a 16 bit external data bus, and a 24 bit address bus. While the SX can logically address 4GB, it can only access 16MB of physical memory. To software, it is completely compatible with the DX, but can be used on architectures designed for the 286.

But as regards the 486, the biggest difference is that the 80486DX (known as an 80486, has an internal FPU, but the 80486SX does not. An external 80487SX FPU can be added to most systems using the SX.

Hmm, I just noticed what you are saying. I missed it before. Your code works when used by itself, but not when used in your program... I didn't get that before.

Regards,
Michael