Joined August 2014
100 Photos and videos
Updated my dreamcast SDL2 port and got a GLDC MR merged(glSubTexImage2d) to improve the performance of my Cannonball port to the dreamcast.
3
11
60
2,105
Space Ace on the dreamcast - github.com/GPF/DCSinge laser disc game player based off of Hypseus Singe api. just reencode your videos with my dreamcast-fmv encoder and use with DCSinge.
1
2
15
298
I wanted to see if my Dreamcast FMV player would display on a spinning cube.
2
3
16
1,477
Troy Davis retweeted
It is with great pride that I can finally announce that my fast math, vector, and linear algebra library for the Sega Dreamcast, SH4ZAM, has now officially been added to the KallistiOS SDK within kos-ports, ready for use within any KOS-based project looking to make perf gainz! πŸ’ͺ Featuring dual modern C23 and C 23-based APIs, backed by a metric shitton of inline and out-of-line SH4 assembly, SH4ZAM is meant to provide game developers with an ergonomic, high-level way to harness the full potential of the SH4's floating-point and memory performance, without requiring anyone to sell their souls or print the SH4 hardware docs out on their bedsheets (as I've already done that part for you). 🀣 What began as a series of math optimizations I was making to Rockstar's engine and Renderware's middleware layer in our Grand Theft Auto 3 and Vice City ports to improve FPS, wound up sending me on an epic quest to bring back the gainz and democratize them for the Sega Dreamcast community and homebrew scene at-large. Since then, SH4ZAM has grown exponentially more capable and has been leveraged to successfully bring the gainz to high-profile ports such as jnmartin's Mario Kart 64 and Star Fox 64 as well as many homebrew games and engines by several collaborating developers who were willing to work with me during SH4ZAM's early stages, providing invaluable feedback and previewing the gainz. I'd like to personally thank everyone who contributed to the SH4ZAM GitHub repository, for everything ranging from epic inline SH4 assembly routines to contributing bug reports, examples, and documentation improvements. We dun good work, everyone! πŸ”₯ You can add SH4ZAM to your existing KallistiOS development environment by simply pulling down the master branch from the kos-ports GitHub repository and running the "make install" command within the "sh4zam" port directory. Further details and documentation can be found on the README for the GitHub repo: github.com/gyrovorbis/sh4zam
23
66
501
22,944
2 Nov 2025
Well, I missed Halloween by 1 day, fell asleep, and couldn't record my Dreamcast simulation of the Hypseus Singe API and my Dreamcast-FMV encoder/player code to convert to my custom .dcmv format.
2
3
27
2,337
17 Oct 2025
I'm progressing on my #Dreamcast #Singe2 port, added some of the hypseus-singe lua api, for more fmv game fun. Happy Halloween!!
1
20
866
9 Oct 2025
I'm progressing on my Dreamcast Singe 2 port, focusing on Hologram Time Traveler, a laserdisc game. I've converted the footage using my custom Dreamcast FMV encoder/player. The challenge is storage; video assets exceed standard CD-R capacity, so it will initially target GDEMU and other ODE users. Singe 2 for Dreamcast πŸ“¦ Header v6: YUV422 320x240 (content: 320x240) @ 29.97fps, 44100Hz, 2ch, unique=55759, total=59406 Frame size: 21248, Max compressed: 19716, Audio offset: 0x315AE000, Compression: LZ4 even at 320X240 it is around 900mb, 640X480 is like 2.6GB, so even to big to run from gd-emu, but will run over bba but get skipped frames at 29.97fps.
7
14
78
5,301
11 Oct 2025
just tested Mad Dog McCree; still need to implement code for moving crosshairs with mouse or controller stick. #Singe2 #Dreamcast
2
12
237
πŸ“£ #DreamSDK R4 is out! This is a modern, ready-to-use package for Sega #Dreamcast development on Windows. If you’re on Windows and want to start coding for your Dreamcast right away, this is for you. πŸ“₯ Download: github.com/dreamsdk/dreamsdk…
8
172
605
64,220
23 Aug 2025
Updating my Dreamcast-FMV player/DCMV container packer to support strided 640x480 YUV422 VQ-encoded textures compressed with LZ4, playing 2-channel 44kHz ADPCM audio. πŸ“¦ Header v6: YUV422 640x480 (content: 640x480) @ 23.97fps, 44100Hz, 2ch, unique=1039, total=1225 Frame size: 78848, Max compressed: 60789, Audio offset: 0x2B32AD6, Compression: LZ4 vid_set_mode: 640x480 VGA with 1 framebuffers. πŸ”„ Loading initial frames synchronously... βœ… Starting playback @ 41.72ms/frame, total=1225, unique=1039 🏁 Playback finished arch: exit return code 0 arch: shutting down kernel vid_set_mode: 640x480 VGA with 1 framebuffers. gpf@GPF:~/code/dreamcast/dreamcast-fmv/playdcmv$ ls -la movie.dcmv -rw-r--r-- 1 gpf gpf 47618230 Aug 22 20:33 movie.dcmv gpf@GPF:~/code/dreamcast/dreamcast-fmv/playdcmv$
4
13
112
5,601
23 Aug 2025
πŸ“¦ Header v6: YUV422 640x480 (content: 640x480) @ 30.00fps, 44100Hz, 2ch, unique=4722, total=5227 Frame size: 78848, Max compressed: 48698, Audio offset: 0x8475800, Compression: LZ4 vid_set_mode: 640x480 VGA with 1 framebuffers. πŸ”„ Loading initial frames synchronously... βœ… Starting playback @ 33.33ms/frame, total=5227, unique=4722
1
6
354
Troy Davis retweeted
SHE'S DONE!!! Mario Kart 64 for the Sega Dreamcast is officially ready for public consumption, so here's a full 6 minute video of gameplay, captured straight from my actual DC! Jnmartin has done it again! The footage you are watching shows every GP course in the game, including multiplayer footage as well. Yes, you can also save and load ghost files from the VMU! As this is our first release, I'm sure you will run into a minor bug here or there, especially given neither one of us could stress test 4 player very effectively using our hands and feet to drive... So be sure to open tickets for any minor issues you find... assuming you're playing on REAL HARDWARE. I can already tell you right now, emulators are having issues with this one! This was my first time getting to directly contribute to a jnmartin N64 port, and it was an absolute honor for me to be involved with his incredible work. There is nobody else who I have ever met with the cross-architecture knowledge of BOTH the Sega Dreamcast and Nintendo 64, combined with the raw grit, tenacity, and attention to detail required to pull this off and do the source material justice. Not only did I get to take my SH4ZAM library for DC math gainz out for a ride with MK64, but I also brought some new routines back from MK64 so everyone can use them! Finally, I got to be involved in laying the foundation for future jnmartin N64 ports, now that we have an optimized, accelerated audio and video back-end for various libultra functionality, including Fast3D. You can already see how much this has benefited future work based on how quickly jnmartin was able to get StarFox 64 up and running on DC... The man doesn't sleep, no. lol. I just wanted to thank everyone so much for the continued enthusiasm and support behind these ports. The support for our work and the Sega Dreamcast means the world to us! Thanks for helping to keep the dream alive! For instructions on how to build yourself a burnable CDI image or a DreamShell ISO for either your DC's SD card or IDE drive, please follow the README on the repository: github.com/jnmartin84/mk64-d…. NOTE: Windows users will need DreamSDK to build. My last-minute build fixes for DreamSDK are in this WIP branch here, which will probably be merged into the main branch tomorrow when jnmartin wakes up: github.com/jnmartin84/mk64-d…
68
356
1,686
62,995
Troy Davis retweeted
Guys, I’m too exhausted AF from doing last-minute troubleshooting to post a good final trailer for the alpha version of our Mario Kart 64 port to Sega Dreamcast just yet… YES, the repository went live last night, and you can build it yourself (unless you’re a Windows DreamSDK user, then the build is screwed up, YES I KNOW SORRY SORRY GOTTA SLEEP FIRST BEFORE I CAN FIX). Anyway this right here is the best physical hardware capture I have seen that does the port justice on a real Dreamcast. What do you guys think!?!
youtu.be/CZGhjaVGlR8 Mario Kart 64 (Dreamcast Edition) - Dreamcast Gameplay πŸ”₯
4
13
147
5,711
6 Jul 2025
🎬 Dragon’s Lair & Cliff Hanger β€” now playing in real-time FMV on the Sega Dreamcast! βœ… Runs on real hardware βœ… Original laserdisc framerate (23.97fps) βœ… Scene-accurate inputs via Lua scripting 🧠 Powered by my Dreamcast port of the DirkSimple FMV engine πŸ” FMV playback: RGB565 VQ compression (pvrtex) 32kHz mono ADPCM audio (dcaconv) LZ4-compressed frames with indexed seeking Audio/video synced via psTimer() πŸ› οΈ Build your own: Convert Daphne .m2v .ogg using my open-source FMV toolchain Play with DCDirkSimple on your Dreamcast πŸ“¦ Tools Source: github.com/GPF πŸ’Ό Open to roles: linkedin.com/in/troyedavis #Dreamcast #Homebrew #GameDev #OpenSource #SDL3 #RetroDev #FMV #CliffHanger #DragonsLair #JobReferral
4
8
53
1,457
4 Jul 2025
Testing my DirkSimple port on Dreamcast via GDEMU: github.com/GPF/DirkSimple Using my Dreamcast-FMV player code with LZ4: github.com/GPF/dreamcast-fmv… Converting the Daphne emulator lair.ogv to lair.dcmv πŸ“¦ Header: RGB565 512x256 @ 23.97fps, 32000Hz, 1ch, 31438 frames, frame_size=34816, max_compressed_size=20802, audio_offset=0x209939A3 gpf@GPF:~/code/dreamcast/DCDirkSimple$ ls -la dirksimple.cdi -rw-r--r-- 1 gpf gpf 660434889 Jul 3 13:56 dirksimple.cdi
21
94
4,609
3 Jul 2025
I've advanced my Dragon's Lair port of DirkSimple to the Dreamcast, removed SDL3, and implemented my Dreamcast FMV player code with LZ4 compression. github.com/GPF/DirkSimple github.com/GPF/dreamcast-fmv…
3
34
163
5,326
3 Jul 2025
Implemented hint sprites and SFX WAV file playback (accept/reject button press).
1
3
21
489
3 Jul 2025
Here is it running on my Dreamcast
2
1
19
336
Troy Davis retweeted
22 Jun 2025
Time for a KallistiOS GameCube update! Besides some loose ends, the KOS kernel is ported and all the foundational stuff like threads, context switching, interrupt handling, etc. are working. A bunch of the basic KOS examples/tests now build and run for GameCube. Wrote some framebuffer and joypad code and what else should someone do then if not port Doom over? This is a capture from real hardware. Software rendered and no sound, but it's a start. We are bug squashing so we can release KallistiOS 2.2.0 stable (for Dreamcast) in the upcoming weeks and once that is complete, the process of merging the GameCube arch into KallistiOS will begin! Once that occurs, we hope to have some faster driver development to bring the GameCube arch up to speed with Dreamcast. Ultimate goal is single codebases targeting Dreamcast and GameCube together ❀️
5
14
90
13,815