Unit520

Joined 5 years ago

Karma
276
Submissions
19
Member since
Jul 28
Homepage: https://unit520.net and you can contact me via unit520net at popular Google mail service.
View on Hacker News

Recent submissions

Comment · 3 years ago
Destructible Tetris blocks: https://unit520.net/deadtrees/

Silly physics fun in the browser, but not a complete game (yet).

Comment · 4 years ago
Some sort of systemic corruption in corporate culture must have emerged at least around the time when Personell was renamed to "Human Resources". I mean, think about it for a second, if you were to hire some people to help you with something, would you unironically call them "human resource"? Even if you might think about them in private as easily replaceable and therefore not of much value, would you go ahead and call them "human resource" to their face without feeling weird at all?

Something strange is going on here.

Comment · 4 years ago
This is actually written in C++ and I compile it to a native executable during development, and yet it crawls to a stop exactly the same, so I'm afraid that that one's on me. :D (It's an inefficiency related to the breakage particles and waits patiently on a big pile of other code TODOs at the moment.)

Nevertheless, I don't disagree with you on your general sentiment towards browser games, I like fast native executables as well.

Comment · 4 years ago
Thank you all for your nice comments and suggestions, be assured that I read every comment even if I didn't reply to you personally!

I'm glad you liked it and will continue to work on it some more, you had some great suggestions that I certainly want to try out.

Comment · 4 years ago
Thanks for reporting!

Yeah, I'm aware of this error, it seems to be related to the shared hosting I'm using, I can't replicate it when serving locally. But as long as it is "falling back to ArrayBuffer instantiation" all is good, and I didn't investigate further because this fallback mechanism actually loads the WASM module faster than the "streaming compile" method (these things are provided by Emscripten).

I have no idea why it didn't load on the first try for you though.

Comment · 4 years ago
Thanks for the feedback, using the phone's accelerometer is actually a great idea! As others mentioned, there are web APIs for that these days, I'll try to include something like that in the next version.
Comment · 4 years ago
Comment · 4 years ago
Hello HN!

This web app is a different take on the typical hex editor/viewer tool. Using this graymap visualization you can easily get a quick overview over binary data and spot interesting structures.

One good example to try out is the Windows Media Creation Tool (MediaCreationTool21H2.exe). If you throw that in you'll quickly see that almost half the data of the 18 MB executable consists of uncompressed bitmaps, which seems kinda wasteful.

Comment · 4 years ago
Very cool hack indeed! One thing I learned from this is that having an HDMI port gives you a free I2C port on top as well, as long as you have an old HDMI cable lying around to cut open.

Small note on using these OLEDs with 5V: Typically they expect 3.3V Vcc and logic levels, although almost all of them seem to work just fine with 5V. In my experiments with a regular 5V Arduino some OLED modules made weird coil whining noises, I presume this is from the charge pump circuitry. Driving them with 3.3V as specified removed the coil whine completely.

Comment · 4 years ago
Reading this article motivated me to take a closer look at printf/iostreams alternatives, and I have to say, the mentioned {fmt} library finally made me switch, so thanks for that!
Comment · 5 years ago
WebAssembly has no access to the outside world at the moment, that is correct. It is only able to call (and be called by) JS.

A C++ application compiled via Emscripten ships (a fairly large amount) of JS glue code that exposes all relevant Browser APIs like WebGL, Fetch or other HTML5 stuff to the actual WASM program. As others commented, for WebGL an additional API translation is applied. If the source targets OpenGL ES 2 (or 3 for WebGL 2), this step has almost no overhead however.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton