Diabaig compiled for DOS (Announce)
I updated to Diabaig 1.0.1. See download links below.
https://archive.org/details/diabaig-1.0.1-for-dos
gopher://tilde.pink/1/~bencollver/files/dos386/game/diabaig/
A reviewer on the Internet Archive pointed out that while this runs on an 80386, it runs slowly and isn't really playable on anything less than a Pentium.
* * *
This version presented a fun debugging challenge for me:
Diabaig crashed every time i used the "run" command. Debug logs indicated that the crash happened in autopilo.c (autopilot.c) when returning from do_autopilot(). I wanted to use the Watcom debugger, but the crash cannot be reproduced when built with debug symbols. I asked for help on social media, and was told that it sounds like stack corruption from a buffer overflow.
Using debug logs and commenting out sections of code in do_autopilot() i narrowed the crash down to the following line of code:
autopilot.c_inroom=c_inroom(p);
For reference, here's the function prototype:
int c_inroom()
OpenWatcom 1.9 does not give any warnings when compiling the c_inroom(p) invokation in spite of the extra argument. After returning from c_inroom(p), do_autopilot() will continue through the rest of the function and finally crash on the return statement.
The following change will cause OpenWatcom 1.9 to produce an error at build time.
OLD: int c_inroom()
NEW: int c_inroom(void)
The following change fixed the crash:
OLD: autopilot.c_inroom=c_inroom(p);
NEW: autopilot.c_inroom=c_inroom();
Complete thread:
- Diabaig compiled for DOS - bencollver, 10.09.2025, 21:42 (Announce)
![Open in board view [Board]](img/board_d.gif)
![Open in mix view [Mix]](img/mix_d.gif)
- Diabaig compiled for DOS - Zyzzle, 10.09.2025, 23:58
- Diabaig compiled for DOS - bencollver, 30.10.2025, 21:40
- Diabaig compiled for DOS - bencollver, 30.10.2025, 21:48
- Diabaig compiled for DOS - Zyzzle, 31.10.2025, 04:23
- Diabaig compiled for DOS - bencollver, 31.10.2025, 13:21
- Diabaig compiled for DOS - jadoxa, 31.10.2025, 15:31
- Diabaig compiled for DOS - bencollver, 01.11.2025, 01:11
- Diabaig compiled for DOS - Zyzzle, 01.11.2025, 09:31
- Diabaig compiled for DOS - bencollver, 02.11.2025, 14:51
- Diabaig compiled for DOS - jadoxa, 31.10.2025, 15:31
- Diabaig compiled for DOS - bencollver, 31.10.2025, 13:21
- Diabaig compiled for DOS - Zyzzle, 31.10.2025, 04:23
- Diabaig compiled for DOS - bencollver, 30.10.2025, 21:48
Mix view