frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Paris Had a Moving Sidewalk in 1900, and a Thomas Edison Film Captured It (2020)

https://www.openculture.com/2020/03/paris-had-a-moving-sidewalk-in-1900.html
99•rbanffy•1h ago•28 comments

Using FreeBSD to make self-hosting fun again

https://jsteuernagel.de/posts/using-freebsd-to-make-self-hosting-fun-again/
156•todsacerdoti•12h ago•29 comments

Alleged Jabber Zeus Coder 'MrICQ' in U.S. Custody

https://krebsonsecurity.com/2025/11/alleged-jabber-zeus-coder-mricq-in-u-s-custody/
40•todsacerdoti•2h ago•3 comments

Linux gamers on Steam cross over the 3% mark

https://www.gamingonlinux.com/2025/11/linux-gamers-on-steam-finally-cross-over-the-3-mark/
432•haunter•4h ago•253 comments

Lisp: Notes on its Past and Future (1980)

https://www-formal.stanford.edu/jmc/lisp20th/lisp20th.html
66•birdculture•4h ago•35 comments

Why don't you use dependent types?

https://lawrencecpaulson.github.io//2025/11/02/Why-not-dependent.html
162•baruchel•7h ago•54 comments

Reproducing the AWS Outage Race Condition with a Model Checker

https://wyounas.github.io/aws/concurrency/2025/10/30/reproducing-the-aws-outage-race-condition-wi...
62•simplegeek•4h ago•9 comments

Tongyi DeepResearch – open-source 30B MoE Model that rivals OpenAI DeepResearch

https://tongyi-agent.github.io/blog/introducing-tongyi-deep-research/
222•meander_water•11h ago•80 comments

FurtherAI (Series A – A16Z, YC) Is Hiring Across Software and AI

1•sgondala_ycapp•1h ago

Why does Swiss cheese have holes?

https://www.usdairy.com/news-articles/why-does-swiss-cheese-have-holes
22•QueensGambit•5d ago•21 comments

URLs are state containers

https://alfy.blog/2025/10/31/your-url-is-your-state.html
300•thm•11h ago•137 comments

Amazon Rivian Electric Delivery Vans Arrive in Canada

https://cleantechnica.com/2025/10/30/rivian-electric-delivery-vans-arrive-in-canada/
19•TMWNN•2h ago•7 comments

X.org Security Advisory: multiple security issues X.Org X server and Xwayland

https://lists.x.org/archives/xorg-announce/2025-October/003635.html
120•birdculture•9h ago•65 comments

The foods that make you smell more attractive

https://www.bbc.com/future/article/20251031-the-foods-that-make-you-smell-more-attractive
4•Korling•38m ago•1 comments

Anti-cybercrime laws are being weaponized to repress journalism

https://www.cjr.org/analysis/nigeria-pakistan-jordan-cybercrime-laws-journalism.php
185•giuliomagnifico•4h ago•50 comments

Solar-powered QR reading postboxes being rolled out across UK

https://www.bbc.co.uk/news/articles/cgln72rgrero
20•thinkingemote•4d ago•13 comments

Is Your Bluetooth Chip Leaking Secrets via RF Signals?

https://www.semanticscholar.org/paper/Is-Your-Bluetooth-Chip-Leaking-Secrets-via-RF-Ji-Dubrova/c1...
54•transpute•4h ago•11 comments

Plumbing vs. Internet, Revisited

https://gwern.net/blog/2025/plumbing-vs-internet
11•Ariarule•18h ago•1 comments

Autodesk's John Walker Explained HP and IBM in 1991 (2015)

https://www.cringely.com/2015/06/03/autodesks-john-walker-explained-hp-and-ibm-in-1991/
104•suioir•4d ago•55 comments

Notes by djb on using Fil-C

https://cr.yp.to/2025/fil-c.html
279•transpute•17h ago•158 comments

Ralf Brown's Files (The x86 Interrupt List)

http://www.cs.cmu.edu/~ralf/files.html
27•surprisetalk•1w ago•2 comments

Printed circuit board substrates derived from lignocellulose nanofibrils

https://www.nature.com/articles/s41598-025-91653-1
21•PaulHoule•6d ago•12 comments

React-Native-Godot

https://github.com/borndotcom/react-native-godot
29•Noghartt•4h ago•2 comments

Writing FreeDOS Programs in C

https://www.freedos.org/books/cprogramming/
76•AlexeyBrin•9h ago•33 comments

Backpropagation is a leaky abstraction (2016)

https://karpathy.medium.com/yes-you-should-understand-backprop-e2f06eab496b
277•swatson741•17h ago•119 comments

MTurk is 20 years old today – what did you create with it?

45•csmoak•3h ago•21 comments

Rats filmed snatching bats from air

https://www.science.org/content/article/rats-filmed-snatching-bats-air-first-time
111•XzetaU8•5d ago•63 comments

Visopsys: OS maintained by a single developer since 1997

https://visopsys.org/
449•kome•1d ago•119 comments

Mock – An API creation and testing utility: Examples

https://dhuan.github.io/mock/latest/examples.html
108•dhuan_•11h ago•17 comments

New South Korean national law will turn large parking lots into solar farms

https://electrek.co/2025/11/02/new-national-law-will-turn-large-parking-lots-into-solar-power-farms/
145•thelastgallon•7h ago•122 comments
Open in hackernews

Writing FreeDOS Programs in C

https://www.freedos.org/books/cprogramming/
76•AlexeyBrin•9h ago

Comments

dardeaup•7h ago
Curious as to whether there are any real-world use cases for doing this (other than curiosity) in DOS. If so, I'd love to hear about them.
grg0•6h ago
I have it on my to-do list to install FreeDOS on bare metal to set up a retro gaming box. Tried once, but for some reason the installer failed writing to disk. Anyway, if anyone is making new FreeDOS games, I'll gladly pay for them, and it'll give me an excuse to go down that avenue again.
dlcarrier•6h ago
If enabling CSM in your BIOS isn't an option or isn't enough for FreeDOS, there is a translation layer that can get it to run on UEFI hardware: https://github.com/FlyGoat/CSMWrap
grg0•4h ago
That had not occurred to me and I'm also not sure. FreeDOS was able to boot just fine into the live environment. It was the disk part that failed.
1313ed01•1h ago
OK, I just posted a comment saying FreeDOS will no longer run on hardware because of lack of BIOS support, but that might change things I guess. Hope it can be made to work.

Another big problem for FreeDOS is the lack of sound card support. I do not know if anyone has solved that yet.

comprev•6h ago
I used FreeDOS once to run ancient software which controlled an industrial size oven. The client was having an ever increasing challenge of sourcing IDE disks (in 2008) so I was contracted to find a solution.

Eventually we settled on industrial PCs, solid state media and FreeDOS.

It was significantly cheaper than replacing the oven at £1M each.... in 50 of their factories worldwide.

LeFantome•5h ago
Lots of solid state to IDE adapties out there too. But great example.
anthk•11m ago
An IDE->CF one would have been cheap enough.
kragen•3h ago
MS-DOS was a reasonable bootloader for Linux and Windows 95; I imagine FreeDOS might be a better one if you wanted to do hobby OSDev. Historically you could get hard real time performance for things like controlling steppers from your parallel port under MS-DOS, but nowadays you'd just use Freeduino or an iCE40. Also maybe brushless motors.
1313ed01•1h ago
FreeDOS is no good at all for booting anymore, since BIOS support is increasingly rare. No way to boot FreeDOS (or MS-DOS) from UEFI. And of course also no point in trying to run it on ARM or any other non-x86 CPU. Looks like the future for FreeDOS will be to run in virtual machines only. A bit sad, since running FreeDOS on the bare metal of a 21st century computer (even one from 10-20 years ago) has been a nice way to experience just how fast modern hardware is.
anthk•8m ago
https://sourceforge.net/p/freedos/mailman/message/59108825/

There's mUEFIrcate for that.

1313ed01•2h ago
I hobby-code for DOS, partly because of nostalgia, but much also because it (specifically DOSBox, or DOSBox-X) is such a fantastic and stable virtual machine. No one is going to deprecate even some minor part of the API. And some emulators give you fun features like allowing any screen resolution to be set up to run in fullscreen on a modern monitor (exposed using standard VESA API inside of DOS).

There are some other retro computer or consoles that could probably be just as useful for this. But DOSBox (as well as QEMU+FreeDOS, for those that prefer that) are nice because they have fully open source implementation from the CPU-level up to the user utilities, so there is no need to mess with dodgy ROM downloads or such to get things working.

actuallyalys•46m ago
I suppose there could be a use for programming for computers that would otherwise be ewaste, although I'm not sure how much ewaste is out there that can run DOS but not, say, Linux or a BSD. Lots has already been trashed or recycled, and my impression is that retrocomputing enthusiasts are thinning out the market as well.
Dwedit•6h ago
Is there really a difference between writing a DOS program and writing a FreeDOS program? You just need a period-accurate compiler that can target DOS. Maybe OpenWatcom, maybe DJGPP.

With HXDOS, you can also write a Win32 console-mode program and run it on DOS. 7-zip is an example of a program compatible with HXDOS.

johannes1234321•6h ago
The "difference" is, that this is the FreeDOS project, thus they focus on that environment.
QuercusMax•4h ago
I confess I don't know anything about FreeDOS, but are they trying to evolve DOS for the future, or just make a free bug-for-bug compatible version? Those are very different things.
johannes1234321•3h ago
I think the goal is compatibility, but not being afraid of extensions (like power management support and some other "modern" hardware features)

In the context of this tutorial: They use their own "fed" editor.

WalterBright•4h ago
The Digital Mars compiler for DOS is available for free.

https://www.digitalmars.com/

kragen•3h ago
But the GCC, OpenWatcom, and DJGPP compilers the FreeDOS folks recommend are additionally free software, which is of real value to some of us. Zortech C had a reputation for producing better code IIRC, and it could run on an 80286, which I'm not sure the others can?
1313ed01•2h ago
I guess it made a lot of sense to implement compilers in 32-bit protected mode to get more space to work with easier? Free Pascal's compiler also requires 32-bit even if it can generate 16-bit DOS code as well (at least when cross-compiling from some other OS; I have not tried to cross-compile from DOS 32-bit compiler to DOS 16-bit executable).

Some people (and by that I mean Debian people; not sure about anyone else) disagree about OpenWatcom being free software. The license has some unusual requirement(s). There has been talk for a long time about possibly fixing that, but I do not know how on track that is (or how much it matters, in practice): https://github.com/open-watcom/open-watcom-v2/discussions/27...

WalterBright•8m ago
I developed on a 32 bit machine because of memory protection. Memory corruption resulted in seg faults, while in 16 bit real mode memory corruption would scramble your hard disk.

I ran all the test suites on protected machines. Only when everything was perfect did I run the programs in real mode DOS.

Protected mode memory is the greatest advance ever in computer hardware.

Narishma•52m ago
I don't know about OpenWatcom but I used the original Watcom on my old 286 just fine. Even the Windows 3.1 IDE ran fine on it IIRC.
WalterBright•11m ago
I don't remember when we transitioned to 32 bit DOS extenders for the DOS compilers, but we never got any pushback for that. Developers all used 386 computers.

I remember attending a compile panel at one of the SDWest conferences. The panel members were myself, representing Zortech, along with representatives from Borland, Watcom, and Microsoft.

The first question was "do you sell a version that will work on a floppy disk only computer?" One of the other panelists responded with yes, we do. He went on to describe how the various bits could be distributed among multiple floppies, and of course it involved a lot of shuffling floppies in and out.

I was next. I replied, "Yes, we have a version that does it! It costs $200 extra and comes with a hard disk drive!"

That got a huge laugh, and that was the end of that question. I never heard it again from anybody. Sometimes, it's just time to move on!

sgt•5h ago
Vibe coders are just going to be staring at this and go... where'd you get that blue mode in Cursor?
grg0•4h ago
From the soydev extension.
hedora•4h ago
Tangentially related: I was getting awful screen tearing in dosbox with a gl @ 4K@60hz rendering target.

Switching to 1080p@240Hz fixed it. The problem was that 60Hz was close to, but not the framerate the old game asked for.

Narishma•55m ago
The typical 320x200 mode that games used back then ran at 70Hz.
1313ed01•3h ago
To the list of compiler listed I want to mention this one as well, that is my compiler of choice for 16-bit C in (Free)DOS these days (because it has a MIT license, it's very small, and it runs great inside of DOS itself so no need to mess with cross-compilation and I know if I have an environment like FreeDOS or DOSBox set up I can both compile and run my code, and I will never have to re-install or reconfigure anything when moving between different host systems):

https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS

(Not only Microsoft's C compiler in that directory, but also MASM, MAKE, and a bunch of other tools. 1-2 MB of files and you have an entire toolchain for 16-bit DOS.)

kragen•3h ago
Interesting, "All files within this repo are released under the MIT License as per the LICENSE file stored in the root of this repo," but did they include the source for the toolchain? I may be looking in the wrong place...
1313ed01•3h ago
No, but that MIT license does not say anything about sharing the source code, so just sharing the binaries should be fine. (Not a lawyer.)

( * Also thanks for mentioning MIT. My comment said BSD, but I fixed that now.)

kragen•3h ago
Yeah, I didn't mean it was illegal, just that you might have an unnecessarily hard time fixing compiler bugs and understanding how the toolchain works.
1313ed01•2h ago
Yes, of course. Source code would be nice, but I gamble on that there wasn't a terrible amount of bugs in that compiler. It is version 5.10, so not the first 5.x release, plus with the lack of good ways to distribute patches back then we all know software tended to be better tested. It also obviously works well enough to compile DOS 4.0 (and a bunch of user tools that are included) plus I have tried it already for some quite big code-bases without noticing anything being broken.

I feel like any bugs can probably be worked around and since it is C it is possible some things can be fixed by adding some macros in the include-files. I have thought of making some minor changes to the include-files to modify some of the few things I noticed that are missing from C89. I do not know if it is possible to make it 100% C89 compliant or if the binaries would have to be patched for that, but it seems like it already is 99% of the way.

* Since I can't comment on the comment to this post: Note I said C89. Definitely not going to go for anything more modern. Possibly add the standard integer size types from C99, as those can be useful for more portable code. There are other, bigger, compilers for more modern C versions that can cross-compile to DOS (and also Free Pascal that seems like a nice language for that).

kragen•2h ago
Oh, yeah, you're definitely going to have a harder time adding C99 support to it than to OpenWatcom, not to mention C11, C17, and C23. Which matters if you're writing new code.