DOSBox x86 system emulator
dosbox.com
dosbox.com
I love the fact that people are still making games for DOS. I've been playing a bit of this: http://www.doshaven.eu/game/ptakovina/ (from 2017!)
What's missing is a multitasking library (not sure Allegro offers something to that effect)
Here, I released this in 1996:
https://archive.org/details/msdos_Aspetra_1996
I knew people still played it, but I had no idea it had a freaking URL now!
My notes from the time: https://sites.google.com/site/waspvm/runningsymate374underdo...
Therefore further development on it is really difficult. This was stated by the developer in an interview some 5 years ago.
basically it's when a bunch of bad but seemingly-innocuous coding design decisions accumulate and compound each other multiplicatively over time, to the point that any change of the code is far more likely to break something than the new feature is worth
Or as I stated at a previous job where I complained about the 40-minute-long test-suite run time that was bogging everyone down, "the road to a 40 minute long test suite is paved with a couple extra seconds here and there with every new code commit"
In my own projects, it's often fun to keep adding things until I hit a roadblock, then spend a couple weeks reworking stuff. It's satisfying to add new features, but architectural maintenance feels like treading water.
So, I'd guess that the answer is somewhere between "outside factors dictate that there isn't time" and "we haven't decided to make the time, even though we could".
There's an interview with the two main developers here, from 5 years ago: https://sourceforge.net/blog/potm-201301/
It sounds like they ran out of energy to really rearchitect the whole thing, or build a new one from scratch.
What company? What management? What customers? What features? Are we still talking about DOSBox?
What company? The Dosbox project itself.
What management? The devs making overall decisions for the direction of the project.
What customers? Anyone requesting new features and fixes in the software.
What features? Built-in support for Munt, new networking support, support for more varieties of peripheral hardware...
It made sense to me to give a more general explanation, since this thread started off with a question about what technical debt is in the first place. I also did my best to address Dosbox's specific reasons by posting the interview with their devs and providing my own interpretation of it.
1) have a good test suite and test coverage to ensure that any code refactoring hasn’t broken other or expected functionality
2) spend the time to rethink the design of some piece and refactor that, deploy and watch for unexpected bugs
3) repeat until the code is up to date
The problem is nontechnical management that doesn’t even understand why it’s important to revisit old code in this way instead of constantly coming out with new features. It is just seen as an unnecessary cost, even though the crufty state of the code has been slowing the whole team down. (Disclaimer: I have been in this exact situation. The founders ended up selling out and leaving.)
"The Night kernel is a 32-bit drop-in replacement for the original 16-bit kernel of the FreeDOS operating system. It uses linear memory addressing and operates in protected mode on the Intel x86 architecture. The typical user will retain compatibility with their DOS applications and gain protected mode abilities such as task switching between applications..."
At it's infancy but you can add RSS[1] to follow the discussion.
[0] https://github.com/mercury0x000d/NightKernel
[1] https://groups.google.com/forum/feed/night-dos-kernel/msgs/r...
More feed options here: https://groups.google.com/forum/#!aboutgroup/night-dos-kerne...
DOSBox saved my bacon, and it wasn't the first time.
(Quick Basic was the descendant of BasicA and largely compatible).
It's actually got a fairly nice debug environment.
https://github.com/86Box/86Box
with "nightly builds" available, besides the Source Code.
Yes, of course.
As I see it PCem is more "stable", whilst 86box is a little more "dynamic".
Since it offers (experimental but) "optimized" builds for certain processors:
http://ci.86box.net/job/86Box-Optimized/
in some cases it is conveneient.
Community Edition. Seems to be some popular tweaks built in. Probably a good place to actually start.
It doesn't even attempt to emulate different memory models WRT where you need barriers AFAIK.
If you can't stand SourceForge or Subversion, there's a very unofficial and irregularly updated mirror of their VCS on GitHub:
emerge -av =games-emulation/dosbox-9999
Pulls straight from SVN trunk @ https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk