Early Access Release v0.2 now up!

Hey everyone, after a month of hard work I am happy to release this new version of DT3K!

Most notably, this is the first version of the game with sound support. On DOS, sound effects are delivered through the OPL2 FM chip that should be compatible with most Adlib and Sound Blaster cards, and even some onboard sound chips from the Windows 95/98 era.

For modern Windows and Linux, I have written custom FM synthesis code that tries to stay true to the Adlib aesthetic, but with a few perks like slightly detuned operators and tweaked LFOs that the OPL registers wouldn't allow for. There is also music streaming with OGG files, and all of this is done through OpenAL.

There has been huge performance breakthroughs since the last release as well, with special focus on optimizing the DOS version and its VGA rendering code. YMMV, but overall framerate counts have *doubled* on all platforms I have tested.

Here is the full changelog:

- sound generation and music streaming (windows/linux)
- adlib sound effects (dos)
- new menu screens for career mode
- you can now repair your car in the garage
- new bird's eye map view
- new characters and font sets
- new building textures
- new "van" traffic model
- one new passenger (hail to the king!)
- smoother and fancier screen transitions
- resized cockpit dashboard
- opengl renderer now does shading in full color
- new exit to console screen
- added support for the close window button on all screens
- floor markings now blink (experimental)
- optimized boundary check on floor drawing routine for extra speed
- improved framerate handling by averaging out several frames
- added fast linear buffer writing (software modes only)
- optimized color lookup tables
- disabled "security" boundary checks on raycasting loop
  (improves speed a bit, but might cause lockups or crashes if the map gets corrupted)
- created lookup table for plane distance calculations
- general tweaks for performance
- added debug screen to measure time spent on processing
- fps counter is now hidden by default (open the debug screen with F3)
- added icon and window title to executable
- all targets are now cross-compiled with a single script (should be tested more often, more stable)
- graphics bitmaps are now compressed with custom RLE format - aiming for <1MB game without music data
- fixed input polling hangup under windows
- completely reworked the help/readme screen


taxi-0.2-dos.zip 598 kB
Jul 25, 2018
taxi-0.2-win32.zip 12 MB
Jul 25, 2018
taxi-0.2-x64.tar.xz 12 MB
Jul 25, 2018
taxi-0.2-dos-full.zip 744 kB
Jul 25, 2018
taxi-0.2-win32-full.zip 12 MB
Jul 25, 2018
taxi-0.2-x64-full.tar.xz 12 MB
Jul 25, 2018

Get Death Taxi 3000

Download NowName your own price


Log in with itch.io to leave a comment.


You should consider adding support for OPL2LPT or OPL3LPT (it's quite easy to modify  Adlib code to support it - let me know if need any help with that).

Is there any minimum requirements?


Thanks mate, I would love to support it if I can get my hands on one of those thingies!

My testing machine is a Pentium 2 notebook with Windows 98, which gives about the same speed as my development machine with DOSBox. I am still looking for ways to make it fast enough for a 486 DX2 at least, this will require some ASM code as right now it is all pure FreeBasic.

(1 edit)

Three key points that might help:

  • Try to use consecutive memory accesses as much as possible, to maximize cache coherence.
  • Avoid floating point like the plague - even on DX machines.
  • Allocate memory upfront and try to recycle it as much as possible.

EDIT: it doesnt work on my 486DX 50mhz, 12 MB RAM. In my Raspberry Pi 3, with DOSBox (my main development machine) it's stuck on the hourglass (but to be fair, my game runs quite slowly on that machine as well).