Hacker News new | past | comments | ask | show | jobs | submit login
A framework for making 2D DOS games in Lua (github.com/rxi)
85 points by ethicszen on June 20, 2014 | hide | past | favorite | 16 comments



This is cool.

But if you really want to be retro and have fun hacking in a truly constrained environment, try coding for the Atari 2600. Grab Stella (http://stella.sourceforge.net/index.php), read up on Atari specs (http://problemkaputt.de/2k6specs.htm) and have at it. Yep you read that right -- 8bit CPU at 1Mhz, 128 BYTES RAM, max 8K of memory.


I'm rather more of a fan of LOAD81 for things like this, although I don't know if it runs on DOS .. it certainly provides the same degree of sophistication, and includes a great built-in editor:

http://github.com/antirez/load81

(BTW, yes: its written by that antirez .. ;)


Thanks for sharing; I was unaware of the app this tool was modeled after: Codea (Lua on iPad)

http://twolivesleft.com/Codea/


That's cool. I've often wondered about creating a retro DOS-shareware-style game, as a throwback to Commander Keen and Jill of the Jungle etc.

It'd be a challenge working with the limited resources, but since most things run DosBOX, you'd also get cross-platform compatibility for free :)


>> It'd be a challenge working with the limited resources

It's fairly simple until you get into things like different hardware and trying to do things with networking. VGA graphics, keyboard input, that stuff is all pretty simple.

Assuming something like a SoundBlaster, even sound programming could be done with a library.


Very cool. It's been ages since I did anything with DOS, but are you limited to 640KB of memory, or can this use real mode/etc. to get access to more memory?


There are gaps in my knowledge, but my understanding is that to address 32-bits of memory requires the use of a "DOS extender". The reason being that DOS is barely an operating system at all- It never provided any 32-bit support but support was possible by monkey patching over part of the operating system in memory. This was possible because DOS had no security measures preventing such horrifying endeavours.

Anyway, I see no reference to a dos extender here so I don't know how it could be anything other than a 16-bit program.

If the author of this framework is looking for a dos extender, I think HX seems like a good choice: http://www.japheth.de/HX.html

unlike other DOS extenders, that provide idiosyncratic apis for allocating 32-bit memory, HX imitates as much as possible standard windows apis, and is able to run some windows applications in plain DOS- including, strangely enough, DOSBox.

(I have nothing to do with HX by the way.)


The compiler used is DJGPP, a port of GCC that comes with a DOS extender, a POSIX-compatible C library and pretty much everything else needed to pretend that you're using a Unix system. Basically Cygwin for DOS.


Yeah, DJGPP is great and I think it was one of the first compilers to work in Protected Mode and take (most of) the DOS/Real mode pain away


Either DJGPP or Watcom with PharLap.

But regardless of who was first (they'll be pretty close, '89 or so) it was a huge step forward for programming on x86. The fact that it was free made it even more amazing.


I think it's the other way around - real mode has the 640kb limit and protected mode gets you a 32-bit address space.


What drove you to make this? It's really cool but very niche


My assumption is that since DosBox simulates the same hardware on different platforms/OSes - it's possible to write a DOS game once and enjoy it on Linux, Windows, Mac, Android etc. Cross-platform games with retro flavor, why not?


Developing DOS games in 2014? Well, why not...


I remember Carmack's statement on DOS from his .plan back around the Quake 2 days

We are not going to do another dos game. No amount of flaming hate mail is going to change my mind on this (PLEASE don't!). The advantages of good TCP/IP support, dynamic linking, powerfull virtual memory, device drivers, etc, are just too much to overcome. Yes, all of those can be provided under dos in various ways, but it just isn't worth it.


"If you're not using DOS as your operating system then DOSbox can be used to emulate a DOS computer."

That made me laugh.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: