IndyCar Racing II: The Rendition Experience

One final vQuake vid (1.08 beta), everything's hunk dory:


Will post another vid once I get AA particles and the Raven-05 underwater res hacks going.
 
***********************************************
!!!RReady DOS/Speedy3D Alpha (July 2, 2024) (Alpha)
***********************************************
Build with vQuake support (all DOS games confirmed to work correctly. RRedline (Windows) games untested):
https://nirvtek.com/downloads/RReady.Alpha.20240702.001.zip
MD5: 3cb2ab212425b119c061b242ded26b93

- vQuake AA doesn't work properly
- vQuake Setting video modes not currently supported (the game will default to 768x576).
- vQuake 1.08 is the only version without rendering defects. Earlier betas might don't render correctly.
- Dosbox-Rendition/RReady expects the game name to be cwsdpmi.exe (which is the process which vQuake.exe launches to actually run the game).
- Everything else is as before. Edge AA might not be working in Speedy3D games (CR and vQuake). This might account for the strange lines on the wheels of the high res custom car models in ICR2.
 
https://nirvtek.com/downloads/RReady.Alpha.20240706.001.zip
MD5: 5b4d20106addb147345dbe30fff99451
- vQuake gpu filtering+chroma keying. Should smoothen pixel edges of grenade and rocket explosions and underwater air bubbles.

vQuake: GPU filtering+chroma Keying + Underwate White Magic Raven hack(@768x576):

Patched vQuake (with White Magic Raven underwater resolution hack) available here, in case someone wants it:
https://nirvtek.com/downloads/vQuake.Underwater.768x576.zip
MD5: b2c4290e4594c0e46778a37a23abb646
 
vQuake resolution change (mixed up mode numbers):

Rest assured I'll be looking to fix the ICR2 custom track problems soon.
 
The high-poly carset 95cart2k can run at a full frame rate by setting

[cpu]
#This is dependent on CPU speed
#[EDIT] The following line is wrong
#as a rough guess I'd say 100000 * base clock speed in GHz.
#[EDIT] Cycles = 400,000 means emulate a 400 MHz CPU.
cycles=400000

The menus run at full speed as well.

Video:
 
Last edited:
July 23, 2024

- Software rendered Quake should be runnable, just like on stock dosbox as well as the JUly 22 fixes.

App name based detection is necessary because the VESA BIOS extension/VGA support is incomplete in Rendition mode. Apps which don't need Rendition support need to detect a vanilla VGA board and one which do need Rendition support.

MD5: be39f97686ebd180d8f4c034ca641bb3

Both Quake and vQuake loaded cwsdpmi.exe. Now Dosbox-Rendition checks to see if the current exe is cwsdpmi.exe (the protected mode overlay/memory manager) and the previous app was vquake.exe before enabling Rendition mode.

July 22, 2024
Untested alpha release for vQuake:
https://nirvtek.com/downloads/RReady.Alpha.20240722.001.zip
MD5: 5704466c82972f663ed3e52b44a2baf5

- All graphical glitches with vQuake fixed.
- vQuake underwater resolution selection available in "Rendition Settings" for dosbox. This destructively modified vquake.exe at runtime. A future update will switch to in-memory patching.
- per app config files now support runtime reloading of [rendition] and [cpu] sections in their entirety. The [sdl] only update priority. Note the vquake.exe.config is the new per app config filename for vquake and not cwsdpmi.exe. The dosbox-rendition.config and per app files should be located in %localappdata%\dosbox.
- Other games are untested.
 
Last edited:
You may get spurious anti-virus software warnings. I've already reported false positives to Microsoft and Kaspersky. It's probably best to wait for updated AV definitions before grabbing these files.
 
This is a post from the official Vogons thread:

To use this run rlauncher. Exe and it should have dos and windows tabs. Currently dosbox-staging isn't in the release, it's incomplete and slightly unstable. To run a game /dosbox highlight it in the list and click launch.

For Windows apps, from the windows tab click add app and browse to the folder where the game is. You can configure upscaling settings for the game by clicking the rendition settings button. This is a per app config and some apps like myth-tfl and gpl shouldn't be upscaled (resolution set to default). Gpl can be set to use higher resolutions from within the game. Interstate '76, i'76 nitro and MechWarrior 2 need dxwnd to run. Heavy gear 2 can use dxwnd or dgvoodoo's direct draw dlls (placed in the game folder). Dxwnd and dgvoodoo allow for emulation of direct draw in rready, which is opengl based.

Additional patches for games like quake2 can be downloaded automatically with the freeware alpha (which is watermarked with text). The store based version doesn't have a watermark, but lacks the auto-downloader. Links to download the patches are supplied in the help file in the store based version. Forced fullscreen is only used with the rendition supplied build ref-v1k for vquake2. RReady downloads or provides links to an updated ref-v1k which can run fullscreen or windowed on win 10/11.

Dos games share rendition settings and all of them can be upscaled. Dosbox settings opens the config files for dosbox. Additional application specific config can be created in the %localappdata%/dosbox folder (i.e. Vquake.exe.config) which overrides [cpu], [rendition] and one setting in [sdl] (priority).

Sierra games like the nascar games need threadsafe=true in [rendition]. Icr2/cart might also need it. Using high-poly carsets you'll need to set threadsafe=true and cycles=400000 in the [cpu] section. Fast single core performance is needed for this. The stock game, including custom tracks should run fine (incl. The enhanced tracks supplied with the game) with a discrete gpu, even older ones. Integer cpu performance is what dos games need with rready.

Staging should allow vquake 1 to run without audio pops/static. But it's not ready yet. I'm struggling with keyboard mouse input with staging. Both these things work with lockups/glitches. Eventually staging will be an option in the DOS tab, in the list. Vquake does run without static at 320x200 (upscaled) with vanilla dosbox as the emulated cpu load is lower.

RReady is closed source, and uses named pipe communication with dosclient.exe which uses the wrapper so I don't think dosbox or staging will integrate it it. I do intend to eventually open source rready, but not just yet. Also in the current implementation some non-rendition dos apps might not work. I've minimised this as best as I can, but I can't realistically test everything. If I get any reports of stuff not working , I can fix it.

@Raven-05 has discovered a few games/demos which appear to have disabled rredline codepaths. So I'll be looking at getting them working as well, assuming the code works.

[EDIT] An updated version of the help doc is available here:
https://nirvtek.com/downloads/RReady Rendition Verite Wrapper.pdf
 
Last edited:
Rebel Moon and vQuake random lock up should be fixed (fingers crossed) and now with dosbox-staging (recommended for Rebel Moon and vQuake):

[Wrong build]
https://nirvtek.com/downloads/RReady.Alpha.20240806.002.zip
MD5: c5073d54097516aa71bf79f547d1df69
[/Wrong Build]
https://nirvtek.com/downloads/RReady.Alpha.20240808.001.zip
MD5: 2aa2c8873eb8ba84b39be575e874f2bf

Staging uses its own dosbox-staging.conf and rendition.cfg files and does not support per-app configs. These will be copied across to the staging subfolder of that dosbox is installed to (withint RLauncher).

This is an alpha release. I have done some stress testing with vQuake and Rebel Moon with staging. Vanilla dosbox should also be fixed (tested only with Rebel Moon). The bug was in the mouse handler. It goes through a thread safe routine now (using SDL_PushEvent) just like it did for the keyboard.

- vQuake 2/vHexen II v1k_nopageflip should no longer tear/band. This is the Rendition native no-vsync mode. It's best to not enable this and disable vsync in rendition settings instead. This should allow for higher frames rates than 85 Hz.
- Descent II (still not working), pre-mission intros no longer flicker.
- Mouse input should be a lot more stable not cause lockups.

I'll be stress testing it over the next few days and will push it out to the store when I'm done.
 
Last edited:
Update on Descent II:


Sorry for the horrible video, captured it on my phone without sound. This game uses front buffer rendering (no-vsync and overwriting what's already on screen).
 
Alpha release:
MD5: 47c386c755cebef95a783eeef30be498
Corrects:
- Dosbox-Staging not showing up right after selecting installation folder
- Dosbox and Dosbox-Rendition mouse motion and button clicks not registering on some systems
- Partial support for Descent II

When I get Descent II working, I'll push it out to the store.

If you get any AV warnings, let me know. I'll report it to Microsoft et al.
 
Meagre pickings I'm afraid: vQuake byte ordering fixed.

https://nirvtek.com/downloads/RReady.Alpha.20240818.001.zip
MD5: e56d83aa2bb51fba089ebc1966551ef1

- vQuake byte ordering: There was a serious bug in the handler for V_FIFO_MEM_WRITER_RECT, leading to texture corruption.
- Includes previous fixes.

This is an untested release. It will be tested sometime next week and pushed out to the store.

I'll post a video later about the byte ordering later.

[EDIT] Video:
 
Last edited:
Fully tested Alpha release (should be up on the store tomorrow without the watermark):

[EDIT] There may be AV warnings with Windows Defender, they should clear up in a day or two[/EDIT]

Fixes:
-Dosbox-Staging not showing up right after selecting installation folder
-Dosbox and dosbox-staging mouse motion and button clicks not registering on some systems
-Partial support for Descent II
-vQuake byte ordering (texture column swap): There was a serious bug in the handler for V_FIFO_MEM_WRITE_RECT, leading to texture corruption.
-vQuake, vQuake II and vHexen II underwater palette colour bug fixed (cl_blend/r_nomurk)
 
vQuake: Scourge of Armagon works with Dosbox/RReady



vQuake: Malice


r_surfacelookup must be set to "0", just like for vQuake. This is a bug with the Dosbox/RReady and will be fixed.

[EDIT2] vQuake: Malice Rendition V2100 vs RReady:
[/EDIT2]
Dissolution of Eternity doesn't run for some reason. It will be fixed.

[EDIT]
vQuake: Dissolution of Eternity


r_surfacelookup must be set to "0", just like for vQuake. This is a bug with the Dosbox/RReady and will be fixed.

The quake.rc file contained in the pak file has an incompatibility with Dosbox/RReady. Adding a text file with name quake.rc with the text listed below will fix it for now:
// load the base configuration
exec default.cfg
// load the last saved configuration
exec config.cfg
// run a user script file if present
exec autoexec.cfg
// stuff command line statements
stuffcmds
// start demos if not allready running a server
startdemos demo1 demo2 demo3
 
Last edited:
I know you guys are only interested in racing sims, but I think this is generally useful info.

Setup guide for MDK with RReady (both Alpha and Microsoft Store):

The textual description has details (at the bottom for Quake 2 and Hexen II) on how to set things up. It's very painful to make these videos, takes up a lot of time, but I'll try and post videos for Quake 2 and Hexen II.

Quake 2 Guide

Hexen II Guide
 
Last edited:
Here's yet endless split screen video of dosbox-rendition before and after embedding the wrapper. Some games show no change in performance or regress but vQuake sees significant performance improvements.

 
https://nirvtek.com/downloads/RReady.Alpha.20240908.001.zip
MD5: dc331c189d6148300d934679c8cdb18f

- Fixes r_surfacelookup "1" not working. The earlier betas should render, but r_surfacelookup "1" and earlier betas are not officially supported, yet. There may be bugs. Note enabling surfacelookup ("1") is slower than disabling it ("0"). This is true for vQuake 2 and vHexen II as well with RReady.
- vQuake 2 chroma keying and texture filtering is now shader based. This should fix pixelated textures in expansion pack "The Reckoning."
- RLauncher remembers the last tab and selected app in each and every tab between restarts.

This will be tested and released to the Store once it's validated.

The embedded code path has been abandoned. Only vQuake saw any improvement and with staging the improvements were minimal. Others regressed or ran the same.

[EDIT]
https://nirvtek.com/downloads/RReady.Alpha.20240909.003.zip
MD5: 0b5930f7f08569653b385136a498744f

https://nirvtek.com/downloads/RReady.Alpha.20240909.001.zip
MD5: 5afb44c22325fff2dfbdb61d7df75016


- Fixes random texture corruption with r_surfacelookup 1 (vQuake 1). On weaker CPUs (in modern terms) r_surfacelookup 1 will be faster, just like in Rendition's heyday.
 
Last edited:
Finally a Nascar Racing 1999 Rendition Edition video. Something actually relevant to this forum.

I've tweaked Dosbox-Rendition's register access slightly while trying to get Eurofighter to run and noticed I can get Nascar 1999's framerates stable (Nascar 2 was already stable). Even managed to briefly get ICR2's replays going faster, but it turns out it was a random glitch somewhere.

I can even get it to run (slowly) on Intel UHD620 (2 real+2 virtual threads @ 2.1 GHz). Something it never did before.


EF2000 is still not quite there yet.
 
RReady September 25, 2024

[EDIT:Wrong Build, do not download]
OR
MD5: 4de5601802af58cabc04a55077c04737
[/EDIT]

Fixes: Nascar 1999 Racing performance boost
MDK : Power up indictator on bottom right has correct background colour
Regressions: ICR2 may have audio pops. This is because of the Nascar fixes. This isn't going on to the store/sourceforge until I fix it. If someone could confirm that they do get audio popping in ICR2 it would be useful, to make sure it's not just my machine.
 
Last edited:
RReady Alpha September 30, 2024 (Fully Tested Alpha release)
**************************************************
MD5: cede5fd862e0bf5d02ade7dc7417006d
- Nascar some texture clamping issues fixed
- MDK weapon power up blended background in HUD

The Nascar 1999 optimisations aren't there (they won't be necessary and the performance boost will be there in the next release without this)
and neither are the new vQuake engine edge AA shaders.
 
Upcoming optimisations for Speedy3D apps in the next release, everything should run at at least 30 fps:

- vQuake no static with Dosbox-Rendition, almost as fast as Dosbox-Staging-Rendition without embedding
- Rebel Moon, no slowdown
- ICR2 full frame with replays and carsets:

The sluggish cars95.2k carset at full speed:

U.2024 carset at 30 fps:

Detroit Downtown HQ at a rock solid 30 fps with replay:


The optimisations are incomplete.
 
This is an extremely alpha release, but it appears to be stable on both my machines with discrete GPUs. Integrated GPUs are completely no go with this release, at least for Nascar and ICR2. The priority of Dosclient is set to be the same as dosbox and dosbox configures itself as being 'in focus' (even though dosclient is) on video mode change.

Performance feedback for this build would be useful, on my Sandy Bridge based i7 (2600) with a GTX660, ICR2 and Nascar Racing 1999 is stable. The framerate isn't always 30 though, it dips with other cars. So feedback on stability and performance would be very nice. On faster machines a full framerate is possible.

MD5: b1f1c3fc896cb5e300b2ce01fa98032f

- Significant performance improvements on machines with discrete GPUs (with dosbox-rendition, staging is only partially modified).
- Dosbox-rendition achieves vQuake performance parity with dosbox-staging-rendition.
- Rebel Moon should run at a solid 60 fps, all the time.
- Dosbox-staging-Rendition has some performance tweaks, but could be unstable. The stability fixes are not in place yet. This shouldn't be tested yet as the changes are incomplete.
- Keys being held down within dosbox on app exist *might* be fixed.

Whether this build lives or dies depends on your feedback. So please post your results.
 
This build adds two new options:

MD5: 89bfd9f38babf0e3b90ac3cf841bd882

[rendition]
highperformance = true|false (default:true)
picdma = true|false (default:false)

highperformance allows the new fast mode and picdma makes it threadsafe (but at the expense of performance).

[EDIT:October 8, 2024] Setting
[sdl]
priority = normal, normal
might be necessary
[/EDIT]


I would recommend testing it with highperfornance = true and picdma = false. If there're any stability issues in ICR2 or Nascar 1999, setting picdma = true to gauge performance would also be useful. (picdma = true is a death sentence for weaker CPUs).
 
Last edited:
Another simulation.

Eurofighter 2000+ (Rendition Renderer) stable in FIFO mode:

[EDIT2]
One final tweak, thick lines:
[/EDIT2]


[EDIT] All rendering defects fixed:
[/EDIT]

 
Last edited:
Untested RReady Alpha October 20, 2024

MD5: 3eee5ef432ec73c43c2454719d7b710e

- Initial support for Eurofigher 2000+ in FIFO mode( DMA mode does not currently work reliably)
- Performance increases across the board by two new settings:
[rendition]
Highperformance=true
Picdma=true
And
[sdl]
Priority=normal, normal
(Previous DMA performance can be restored by setting both these to false. Threadsafe=true only has an effect if both these are set to false).
The new high-performance mode is extremely CPU intensive and might not work on older CPUs and might introduce audio static (random occasional pops).
- Custom car sets in ICR2 should be usable on most modern quad core or better systems.
- RebelMoon should sustain a solid 60 fps right throughout.
- RebelMoon chroma keying fixes: particle impact cloud sprites should render fully and not be clipped.
- FIFO mode memory write tweaks to support EF2000 in FIFO mode.
- Dosbox-Staging-Rendition has a full set of config settings under [rendition]. It also has performance improvements in ICR2. However it may have stability issues with Nascar Racing 1999R and possibly other apps. It does not currently support per-app config files.

This will be tested over the next 2 weeks and released to sourceforge and the Microsoft Store. Independent testing by a few other users would be useful. Just because it works for me doesn't mean it'll work for anyone else.
 
*************************************************
RReady Alpha October 23, 2024 (Fully tested release)
*************************************************
MD5: 4538bc2b544cc8aa42a0769bf2975ab0

19 October 2024
- Initial support for Eur*figher 2000+ in FIFO mode( DMA mode does not currently work reliably)
- Performance increases across the board with two new settings:
[rendition]
Highperformance=true
Picdma=true
And
[sdl]
Priority=normal, normal
(Previous DMA performance can be restored by setting both these to false. Threadsafe=true only has an effect if both these are set to false).
The new high-performance mode is extremely CPU intensive and might not work on older CPUs and might introduce audio static (random occasional pops).
- Compatible custom car sets in ICR2 should be usable on most modern quad core or better systems.
- R*belMoon should sustain a solid 60 fps right throughout.
- R*belMoon chroma keying fixes: particle impact cloud sprites should render fully and not be clipped.
- FIFO mode memory write tweaks to support EF2000+ in FIFO mode.
- Dosbox-Staging-Rendition has a full set of config settings under [rendition]. It also has performance improvements in ICR2. However it may have stability issues with N*scar Racing 1999R and possibly other apps. It does not currently support per-app config files.
- N*scar Racing 1999 improved stability with Dosbox-Rendition.
- Dosbox-Rendition vQ*ake performance parity with Dosbox-Staging-Rendition.
- T*am Apache may have compatibility issues with cutscenes with the October updates to Windows 11/nvidia drivers.
*************************************************
 
For ICR2 and Nascar

Frame interpolation test:
Try this:
MD5: 2d1314b5161dcab85ca3cb6969351aec
[ignore this one]
MD5: 6ea2798dec38f18a517e4fe6d8ac04c0
[/Ignore]

In the Dosbox folder rendition.cfg file add
interpolate=1

You may have to disable AA by hitting [ALT+A] in ICR2

Nascar Racing 1999 60 fps:
ICR2 60 fps:

[EDIT] OBS seems to have an issue with capturing at 60 fps producing duplicate frames:
Afterburner captures only intermediate frames as can be seen here:

ICR2.60fps.Intermediate.1080p.png
ICR2.60fps.Intermediate2.1080p.png
 
Last edited:
Frame generation at 60 fps, better capture with ShadowPlay, the frame rate does dip below 60 fps with it at time:

The intermediate frame should be visible in while advancing frame by frame.
 

Back
Top