Recent submissions

Comment · 4 years ago
Perhaps another way to say it-using an evil compiler could bootstrap any kind of malicious code in the compiled artifact whether it’s a compiler or not.
Comment · 4 years ago
Is it just me…or does article seem a bit contrived? I was expecting to read this to learn about a really powerful hijacking technique when in reality it’s just a program that manipulates your input program.

This is something that could easily occur with scripting languages, backend systems, open source, closed source, etc.

Basically any black-box system that takes in some input could pre-manipulate the input yielding an unknown/unexpected output.

Comment · 4 years ago
Curious what makes Raylib good for emulators? I’m genuinely interested in this.
Comment · 4 years ago
Brilliant project and execution. I love the idea of bringing the tactile experience together with a digital gaming experience.
Comment · 4 years ago
One more thing: Apples’s turnaround was one of the most unexpected things in modern computing.

Also, never have I ate my own words harder with the “Mac sucks” thing.

At the end of the day I’ll use what works.

Comment · 4 years ago
As a long-time PC user, I remember going to CompUSA and seeing the Mac section of games which was laughable.

Back then you bought Apple if you were a sound engineer or into graphic/media design.

I used to tell people I’m a die-hard PC user simply: Mac sucks!

Fast forward to around 2009 and I’ve been a happy Apple user since then for all my software engineering needs.

Is the platform perfect? Nope! And nothing is.

Is it expensive? Yes, but the quality is fantastic and if one really wants to can get 5 years easy out of any Mac computer…I’ve got 11 years out of my family’s Mac mini that I was able to upgrade a few times.

Which brings me to my only real gripe: the lack of upgrade ability and the obsession with “thin” design.

Please address that because everything else I can mostly get over.

Comment · 4 years ago
I had a similar problem. My flash content was several modules where the main module swapped in and loaded in sub-modules.

The main screen would loaded but when clicked wouldn’t resolve the sub-modules correctly but I was able to just play the sub-modules and individually and see the old content in all its cheesy glory.

Comment · 4 years ago
I know this doesn’t satisfy compilation issues but for playing Flash content using a modern engine try out: https://ruffle.rs/

It’s written in Rust (don’t shoot the messenger) and was able to play some flash content I had produced around 1999…

Ok I’m going to go crawl back under my rock.

Comment · 4 years ago
Awesome blog post Ben! Question: how did you come up with your list of opcodes?

I ask because while some opcodes are obviously needed others as not so obvious and coming up with a balanced instruction set is somewhat difficult design problem.

Comment · 4 years ago
Question on VM snapshotting: what’s the purpose/point in even having such an ability? What does it allow you to do?

I only know of snapshotting perhaps being necessary to support coroutine based context switching.

Thanks and very cool project!

Comment · 5 years ago
Big shoutout to the ScummVM team for keeping these games alive and well on modern hardware.

But did you know they also often times will additionally fix existing bugs in these games. Bugs that are now decades old!

These classic titles are now even better to play than when they originally came out.

Comment · 5 years ago
Comment · 5 years ago
Oh wow, thank you Beej for this work and content! Your resource has been a tremendous reference to many of us myself included and still stands as one of the best resources to network programming today!
Comment · 6 years ago
TIL: John Carmack almost shipped a game with 1 extra frame of latency unnecessarily...
Comment · 6 years ago
This is one thing I’ll never understand. I can’t stand heavy blankets but I do like warmth.

Just my personal preference.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton