VOGONS


Quake without FPU

Topic actions

Reply 40 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

RapidCAD@40MHz:

Shareware v1.06 : 2.8 FPS
Tronix no FPU v1.09 version: 2.1 FPS

All run from Quake shareware directory.

Last edited by kixs on 2019-09-25, 12:29. Edited 1 time in total.

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 41 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

Changed the cpu for Ti486DLC.40 and Quake v1.09 DJGPP ... [NO FPU] upon start gives an error:

Quake requires a floating-point processor.

G26aPzfl.jpg

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 42 of 118, by Tronix

User metadata
Rank Member
Rank
Member

kixs, not bad. You can compare this result with attachment EXE file - its compiled with FPU-optimized asssembler functions with DJGPP 2.05, GCC 9.2.0, with CFLAGS=-O9 -march=i586 -Wall -fomit-frame-pointer -ffast-math

Attachments

  • Filename
    quake_i586.zip
    File size
    374.93 KiB
    Downloads
    15 downloads
    File license
    Fair use/fair dealing exception

Reply 43 of 118, by Tronix

User metadata
Rank Member
Rank
Member
kixs wrote:

Changed the cpu for Ti486DLC.40 and Quake v1.09 DJGPP ... [NO FPU] upon start gives an error:

Quake requires a floating-point processor.

Hm, okay, i commented signal(SIGNOFP, Sys_NoFPUExceptionHandler); string in sys_dos.c file. Recompile. Try this version plz.

Attachments

  • Filename
    quake.zip
    File size
    359.75 KiB
    Downloads
    15 downloads
    File license
    Fair use/fair dealing exception

Reply 46 of 118, by Tronix

User metadata
Rank Member
Rank
Member
kixs wrote:

But still won't run...

Hmmm... Last try - compiled with -wmemu (libwmemu.a)

Attachments

  • Filename
    quake.zip
    File size
    362.58 KiB
    Downloads
    30 downloads
    File license
    Fair use/fair dealing exception

Reply 47 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

Great success 😁

This is with Ti486DLC-40, 256kb cache, 32MB RAM, VLB S3 864 2MB and VLB I/O.

2vAd8k7l.jpg

Don't ask be about FPS as this is slooooooooooooooooow. It took a minute or even more to draw what I photoed 🤣 I even thought it froze at one point before loading the demo. If I had to guess it takes around 13-15 second to do one frame. Will decrease the size of screen to a minimum 🤣

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 48 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

With minimum screen size it still takes around 5-10 seconds per frame - I guess more complex scene as there are the first enemies in a DEMO1.

It threw the grenade and it took 18 seconds. For explosion it took 25 seconds per frame.

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 49 of 118, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

Awesome work Tronix and kixs! kixs can you test vs Shareware Quake w/Q87? I’m curious if there’s any benefit other than not requiring Q87. What a fascinating thread!

Check out DOSBox Distro:

https://sites.google.com/site/dosboxdistro/ [*]

a lightweight Linux distro (tinycore) which boots off a usb flash drive and goes straight to DOSBox.

Make your dos retrogaming experience portable!

Reply 50 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

For some reason the Q87 (or Q87X) crashes Quake v1.06, v1.08 and v1.09 right away - all shareware versions.

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 51 of 118, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

Ok that’s basically what OP experienced although georgel insists it does/will.

Check out DOSBox Distro:

https://sites.google.com/site/dosboxdistro/ [*]

a lightweight Linux distro (tinycore) which boots off a usb flash drive and goes straight to DOSBox.

Make your dos retrogaming experience portable!

Reply 52 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

In the Q87 readme it mentions only 486SX to run Quake. So I've gone to find the 486SX2/66... I've put it on the 40MHz clock and it runs now at 80MHz. It does run Quake with Q87X 😁

I'll test the Quake with Q87X and Non-FPU version. My guess is that Q87X will be quicker.

Will do some benchmarks...

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 53 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

Benchmarks:

Amd486SX2@80Mhz

Quake v1.06 with Q87X - max screen size ... 1.1 FPS
Quake v1.06 with Q87X - min screen size ... 1.7 FPS

Quake v1.09 NO-FPU - min screen size ... 0.2 FPS 🤣

Last edited by kixs on 2019-09-26, 11:32. Edited 1 time in total.

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 54 of 118, by georgel

User metadata
Rank Member
Rank
Member

Good. Q87/Q387 is the fastest of all other FPU software emulation routines that you may come across. Quake may be picky about the expanded memory manager as I mentioned before, so I strongly advise you to try instead of EMM386 QEMM or 386MAX and not to blame Q87 alone for your failures to run Quake. Quake will of course run much better on NexGen than on 486. If someone needs run codes for Q87/Q387 for your machines, let me know.

Reply 55 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

The same system configuration and Quake runs with Q87X on 486SX2/66 but it won't on a Ti486DLC. Of course the motherboard is also different.

NexGen... I'd like that system... but locally someone is selling it as-is for quite a bit of money and I just can't justify throwing money to the BIN if it doesn't work 🙁

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 56 of 118, by georgel

User metadata
Rank Member
Rank
Member
kixs wrote:

The same system configuration and Quake runs with Q87X on 486SX2/66 but it won't on a Ti486DLC. Of course the motherboard is also different.
(

This does not mean that the EMM is not problematic on the DLC. How much RAM do you have on both platforms? Is the RAM on the DLC thoroughly tested for failures? QEMM is not only much superior compared to the EMM386 but is outputing more informative error messages...When you run Q87 on the DLC is it recognized as a coprocessor by detection utilities like checkit?

OFFTOPIC: is the RapidCAD's coprocessor working with the Ti486DLC?

Last edited by georgel on 2019-09-26, 11:32. Edited 1 time in total.

Reply 57 of 118, by kixs

User metadata
Rank l33t
Rank
l33t

Quake crashes. Not EMM.

486SX2 has 16MB
486DLC has 32MB

All tested and run without errors otherwise.

But this isn't an issue for me as it would run way too slow.

---
Updating the above benchmarking thread as NO-FPU Quake just finished in almost two hours 🤣

My Amibay | - Updated on 2022-07-13 | Requests also possible

Reply 58 of 118, by georgel

User metadata
Rank Member
Rank
Member
kixs wrote:

Quake crashes. Not EMM.

This is what you see and your conclusion is quite simplistic since you don't know what causes the crash! When quake runs there is a lot of underlying software that runs too: the BIOS and BIOS extensions, the DOS and its TSRs, the EMM (the PM hypervisor), Q87 (the hypervisor's extension), DOS4GW (The PM DOS extender that gets its memory from the EMM's pool and switches constantly between PM and RM via EMM's VCPI and provides flat memory PM context to quake while serving all quake's OS requests passing them to DOS/BIOS and other RM handlers that may be present in the system), and on top of these runs Quake. It's like a concert.

Reply 59 of 118, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

Kixs going the distance with the testing! I don’t think OP is going to get playable FPS on his Nexgen CPU, looks like he should invest in a 3D card.

Check out DOSBox Distro:

https://sites.google.com/site/dosboxdistro/ [*]

a lightweight Linux distro (tinycore) which boots off a usb flash drive and goes straight to DOSBox.

Make your dos retrogaming experience portable!