![]() ![]() Follow the README.md to install the tools, including the new DOS tools. Demo: Hello DOSĪlright, go get the latest and greatest from the r96 repository. Today, we're looking at DOS support, and then load and draw some bitmap fonts. I currently don't feel that specific masochism piling up inside of me. Unless I'll add Android and iOS support in the future. I can now happily continue writing the series. And I rewrote the first 3 blog posts in the series. And I added some VS Code magic so you can comfortably start debugging sessions on each platform.Īnd to round it all off, I cleaned up the Git repo, so each blog post maps to exactly one commit. ![]() With all of that out of my system, I built some shell scripts that will help you install (almost) all the tools to compile, run, and debug the r96 project for desktop, web, and DOS. I also forked DOSBox-x to fix it up so my forked GDB can actually connect to DOS programs via the serial port/TCP emulation.įinally, I took the barely functional GDB stub that comes with DJGPP, rewrote it and added a ton of functionality to it, so I can now debug DOS programs running in DOSBox-x from the comforts of Visual Studio Code.Īll of that work culminated in a VS Code extension, which lets you go from 0 to debugging a simple DOS mode 13h demo app in VS code in about 80 seconds: Then, I forked an old GDB version which is capable of remotely debugging 32-bit protected mode DOS programs as produced by DJGPP, the GCC fork I use to build C/C++ DOS programs. Spurred by a mean comment on Reddit about how the r96 code doesn't even run in DOS, I made the code of the series run in DOS.įirst, I built a DOS backend for MiniFB. Then I drifted off into yet another rabbit hole. Going forward, I can embed those fancy CFGs directly. Just paste some x86 or ARM assembly generated by MSVC, Clang, or GCC into the left panel, and view the control flow graph of each function on the right. But there's a reason for it! I was rather busy in those two weeks.Īfter using Hopper to generate control flow graphs to discuss performance optimization, I got a little sick of the workflow and built my own assembly CFG viewer. That was over 3 weeks ago, making me miss my target of posting one series entry a week. Last time we learned about loading images and blitting. ![]() To follow along this blog post with running code, make sure you've installed the prerequisites. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |