HN user

1313ed01

437 karma
Posts1
Comments228
View on HN

I worked for several American companies in Sweden an all of them insisted on calling us engineers. Many I work with happen to be engineers, but I dropped out before getting my (computer) engineering degree. It's embarrassing. I would never call myself a software engineer or any other kind of engineer (or a doctor or lawyer or anything else I am not).

It bothers me that my large collection of legally bought, drm-free, works (ebooks and digital games, mostly) will basically transform into illegal warez for my heirs, as I understand the law. They can still legally watch my DVDs, read my printed books, but my collection of tabletop RPG PDFs, GOG games, etc, they may as well have downloaded from some shady torrent site? That does not feel right.

Especially not since many things I bought, like from Humble Bundles, have not been available drm-free since, and may never be, so all legal drm-free copies will expire as the generation that bought them passes away?

My understanding is the laws you describe are mostly limited to a few European countries, while most of the rest of the world are more restrictive?

Also, with with the limited right to make copies like that comes quite high fees on recordable media that is paid to the music and movie industries as compensation through organizations like CopySwede here in Sweden.

The problem with C++ string slices is that after many years of C++ becoming increasingly memory-safe with std::string and smart pointers, now we reverted to something barely more safe than a C string.

I guess Rust can keep slices safe using some borrow checker magic or something, but C++ can't.

There is 16-bit DOS support in Free Pascal these days (yes, added long after 32-bit DOS support). That makes it easier to get a pointer to video memory. Makes other things less easy.

Also some (more) free (open source) 16-bit C-compilers now, like the ia16 gcc port and Microsoft's C compiler included in the MS-DOS repo on GitHub.

Not that 32-bit extenders do not come with some advantages, but I enjoy the simplicity of 16-bit.

Why Janet? (2023) 2 months ago

There is also fennel, earlier language originally by same developer, that is similar, but compiles to, and is fully implemented in, Lua. No standard library of its own so missing many nice things like the parser library from janet, but it is good for writing scripts for things that embed Lua.

https://fennel-lang.org/

I do the opposite and put all games together, with DOS BAT-files to launch the games. I boot up my virtual dream DOS machine by just starting DOSBox-X and then I launch the games the way they are meant to be launched, from the DOS COMMAND.COM command-line. And as I mentioned in another comment, all of that is in one big DOS git repo.

Nice thing with DOSBox-X is there is a built-in command to set config parameters, so for games that require special settings or to slow down etc that can be set up from its launcher BAT file. All games share the same dosbox config file with default settings.

I never had any issues using WINE to install GOG games, but maybe running WINE on a Mac is not as easy now as it was back when I did that on a x86 Mac?

I always run the GOG installer in WINE and then copy the game into my git repo for DOS stuff, make sure the game works, git commit it, and then I know it will always just work and I will not have to think about that again (plus I can version manage all settings and save-games for all the games and also sync between my different machines without relying on any cloud service).

Termux and DOSBox are great for running or writing software on a phone. I almost never resort to installing or writing apps anymore as that is just more cumbersome and has APIs that keep breaking (not to mention the threats from Google about making non-Play app deployment more regulated).

I only use BASIC with line numbers, mostly GW-BASIC and pcbasic. Without numbers it just feels like Lua or python or any other scripting language, but worse? The line numbers BASICs come with their own almost-REPL (IDE?) that I find quite nice (or at least fun) to work in. Maybe mostly nostalgia, but it is the only reason for me to use BASIC at all. I have some basic-mode installed to edit BASIC code in emacs, but I only rarely edit the code outside of its natural built-in line-editor.

For making DOS games, there is also an old port of Löve2D. Löve2D normally uses SDL, but the DOS port has its own little (mode 13h VGA) graphics/audio/input library instead. Guess with a proper SDL port it might be possible to make a more complete port of Löve 2D (and of a newer version).

https://github.com/SuperIlu/lovedos

The original upstream version is archived and has not been maintained in 9+ years. The link is to a fork that has fixes as recent as 2025.

Martin Gardner wrote an article on platonic solids in Scientific American, December 1958, and mentioned this in passing: "All five Platonic solids have been used as dice. Next to the cube the octahedron seems to have been the most popular". I have no idea what games using 8-sided dice were somewhat popular (or existed at all) in 1958 or earlier? I wondered about that since I first read that article some decade ago.

I also read a book about games from ca 1880 and it described 12-sided dice (the usual one, numbered 1-12) as if that was a thing some people used for playing games, but none of the games described in that book used them and I also have no idea about other old games using 12-sided dice.