April 21, 2026
NULL pointer, full drama
Hunting a 34 year old pointer bug in EtherSlip (DOS Networking)
34-year-old DOS bug resurfaces: retro fans cheer, pragmatists say “use a different compiler”
TLDR: A retro DOS networking test triggered a “NULL assignment detected” warning, exposing a decades-old memory bug while using EtherSLIP. Commenters split between praising Ethernet-style emulation, advising a different compiler, and warning that DOS lacks safety checks—reminding everyone why retro debugging is equal parts archaeology and chaos.
A retro coder fires up a 1980s-style internet over a serial cable, and bam—his DOS app screams “NULL assignment detected.” Cue the comment section lighting up like a modem tree. The post tells a throwback tale: using an old trick called SLIP (internet over a serial port) through EtherSLIP, which pretends to be Ethernet. When packets started dropping, the compiler’s end-of-program check accused someone of writing to memory address zero—a very bad, very old-school move.
The crowd split fast. One camp cheered the elegance of “Ethernet-in-a-trenchcoat.” As userbinator put it, so many networks today just pretend to be Ethernet to your software—so yes, EtherSLIP is basically cosplay and it works. Another camp threw tools at the wall: “Try the Fil-C compiler,” urged NooneAtAll3, turning the thread into an impromptu bake-off of compilers and debuggers. Meanwhile, the safety gurus dropped a reality check: DOS has no seatbelts. As kazinator reminded everyone, there’s no memory protection, so the compiler fakes a guard by watching the first 32 bytes—if they change, you probably poked the dragon.
The memes wrote themselves: “EtherSLIP is Ethernet in a trench coat,” “NULL pointer is the final boss,” and “Retro bug? More like undead boss fight.” Nostalgia, nerdery, and a little fear—classic comment-section chaos, just the way we like it.
Key Points
- •EtherSLIP enables DOS applications expecting Ethernet to operate over SLIP via a serial port.
- •During Telnet testing with packet loss, Open Watcom 1.9 reported “*** NULL assignment detected.”
- •Open Watcom’s DOS runtime detects NULL writes by guarding the first 32 bytes of the data segment.
- •The issue appears only with EtherSLIP and is triggered when lost packets require retransmission.
- •Initial debugging via added NULL checks and trace points did not reveal the offending write, necessitating a different approach.