Has anyone ever analyzed Grand Prix Circuit? It's an earlier product of DSI and some routines were clearly taken from it. It contains .PCS (CGA) and .PES (EGA) resource files that are compressed the same way as Stunts.
Once extracted, the resource files can be open with Stressed, but the format has differences. E.g. Stressed is unable to detect the asset format, and even after manually choosing "Bitmap", the resulting image has wrong colors and seems 3x or 4x compressed horizontally. The image in the screenshot should be Monza GP's map: it is still recognizable but clearly some further processing is needed.
monza.png
This is how the map appears in the game.
monza-real.png
niiiiiiiiice!!
Happy to report a
partial success. We can now read
most (EDIT: all) of Grand Prix Circuit's EGA assets!
ferrari.png
And the changes also allow to read the handful of Stunts' EGA resources, including the editor's icons.
dsilogo.png
There are still some glitches (EDIT: now fixed :)) but LLM-based development has its plus sides :-)
@dstien @llm
My mod is coming out quite well :-)
The title is set: "Don Matrelli's Legacy"
Pity I could not figure out how to change the sky color. (EDIT: ah, just found out how to put a background going up to the top)
217.jpg
Really cool! :)
Wow congrats! It looks great! I think you can edit Grand Prix Cycles (1989) as well, since they are very similar games. :D
Quote from: alanrotoi on April 27, 2026, 02:02:27 PMWow congrats! It looks great! I think you can edit Grand Prix Cycles (1989) as well, since they are very similar games. :D
Yes it works! Turns out the format of
The Cycles is an intermediate evolution step between GPC and Stunts, but easily added. Also, thanks to your hint I found out that someone has already built a vehicle engine editor for these earlier DSI titles, and a guy was investigating the music format. The DSI ecosystem is getting quite big 🎉
https://github.com/albertus82/cyclesmod
Screenshot_20260427_172055.png
Good news: the whole engine parameters for GPC have already been documented, thanks to the guys behind the cyclesmod (https://github.com/albertus82/cyclesmod) project (an equivalent sort of CarWorks for earlier DSI games).
Discovery of the day: the power curves displayed in the car showroom are only vaguely related to the values that the game really uses. In particular, the McLaren receives an artificial boost around 9500 rpm.
mclaren-torque.png
Quote from: HerrNove on April 30, 2026, 04:00:44 PMIn particular, the McLaren receives an artificial boost around 9500 rpm.
That's when the VTEC kicks in. ;)
Stressed is now 99% able to load GPC assets. The only mysterious glitch is that some of the bitmaps are loaded with inverted colors, like the Ferrari and McLaren logo (but not the Williams').
Screenshot_20260503_121551.png
Another curiosity: the car selection screens are stored as XOR-difference with respect to the Ferrari one.
Screenshot_20260503_131328.png
It looks messy but as used you can't notice it :D
Btw, is it possible to edit tracks? I think Grand Prix Circuit and The cycles have some differences here because the second has hills and ramps and GPC is just always flat. Maybe it's not a big difference in the code since in any case they are 2D tracks. Just thinking...
Quote from: alanrotoi on May 04, 2026, 07:00:20 PMBtw, is it possible to edit tracks?
Yes, I figured out the format last month :D But the layout is stored in the .exe, not in the datafiles. So for now the only way to build the track is with a text or hex editor.
Here a video with my first circuit (before I add curves): https://www.youtube.com/watch?v=yohwZZDyO-o
Off topic, but I'm happy for Colapinto's good result yesterday :)
Thanks! Here many people if fan of Colapinto. There is a big audience of the F1 because of him.
I would like to watch it but I'm not attracted to races. I don't know why. The same happens with local racing tournaments like Turismo Carretera (TC) is like DTM but with Camaro, Challenger, Camry, Mustang and Torino. I like the cars, I like the competition... But I always forget to watch it. It's not in my system.
About your video.... It's awesome! I liked the dark part, like it was a night mode! Cool improvement!
Another small thing Spanish speakers might appreciate: it took some hours but I managed to hack the font used by GPC. So the name of this driver (son of a famous rally driver nicknamed "El Rey") can be written correctly :D
Screenshot_20260506_003143.png
Ryoma has used the new `stressed` to create an edition of GPC that reproduces more faithfully the 1988 season:
https://www.youtube.com/watch?v=JqtWVCGKUnE
The mod is approaching completion. Here a preview with a new car on a new ( but actually quite old :) ) track
https://www.youtube.com/watch?v=f4_90RCFmcE (https://www.youtube.com/watch?v=f4_90RCFmcE)
Mod published (see the other thread). I also published the extended verion of Stressed allowing to open GPC files. Hope it will be merged to the official edition soon.
https://marnetto.net/projects/grand-prix-circuit#stressed--gpc-edition
By the way, if there is a project that can mod something from Test Drive 3, probably those tools could work with Grand Prix Unlimited too, since they are very similar games. GPU may be a game with a terrible handling but it has a track editor. A much more comprehensive track editor than Stunts'.
Friendly greetings to everyone from Hungary, it's my first time posting here :)
I haven't found any other place online about reverse-engineering GPC, so I registered specifically because I'd like to share my own documentation for the music and voice formats used by the DOS version of GPC and TD2.
You can access the ongoing music/voice reverse-engineering project through this Github link: https://github.com/Swift97/testdrive2-music/
(Don't mind the project name. It started as a SONGS.BIN doc, but GPC's MUSIC.BIN uses the same format.)
It took a lot of trial-and-error experimenting with Dosbox/Hex Workshop/Audacity/FL Studio, as well as a small bit of LLM usage to auto-scan through the GPCEGA.EXE and TD2EGA.EXE files in order to verify/cross-check my findings (especially about the pattern roll's control/event bytes). The result is a documentation that's proven and tested to be effective for both games.
As you can read in the preamble/README, updates may be slow, but I try to update the .MD text files as soon as I figure out something new about the format. I have to juggle IRL matters, other hobbies, work, fooling around with TD2's .PES/Car/Track data, etc. along with this project.
Also please bear with my terrible formatting scheme. I tried to make it as logical and easy to read as I could, but I've never written any docs like this.
I really hope it'll be at least a little useful to someone who might stumble upon it in the future :) Maybe someone will create a cool Famitracker-like sequencer. Or maybe someone will program a sick original song with arps and pitch bends defined with different voices, perhaps a remix of the GPC theme itself ;D
Lastly for fun, here's the main riff from Doom E1M1 hand-coded in Hex Workshop https://youtu.be/l2IkhIS0ZVE
Congratulations! It sounds quiet good and funny!
Great find! Developer Roel Derickx had published some initial research on the music (https://github.com/roelderickx/retro-grandprix), but your work is the first one that really documents the format. Also, At Doom's Gate is a really fit replacement for TD2's start menu.
Another recent finding about sound and music modification on GPC:
https://youtu.be/LUjgzxsvFYA
Can this somehow be related to any previous post messages?
Quote from: Zapper on August 23, 2026, 08:04:11 PMAnother recent finding about sound and music modification on GPC:
https://youtu.be/LUjgzxsvFYA
Can this somehow be related to any previous post messages?
The author has promised a post about that mod, I guess it will appear on their blog (https://pixelwings.org/). Maybe they will also say whether they were inspired by the recent developments.