frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: NES Contra (1987) port (ASM –> C and then C –> WebAssembly)

https://epoyraz.github.io/nes-contra-us/
12•tevlon•1h ago
Based on vermiceli's annotated disassembly of Contra: https://github.com/vermiceli/nes-contra-us. Thanks for the great work.

I ported it in two steps. First to C: the game logic is translated routine by routine from the 6502 assembly, and checked frame by frame against the original in the Mesen emulator. Then the C code to WebAssembly so it runs in the browser.

The cherry on top: online multiplayer, so two players can play co-op over the internet.

Source: https://github.com/epoyraz/nes-contra-us

Comments

BSPtree•1h ago
Cool, how did you build the multiplayer mode? And how much AI was used?
gwbas1c•43m ago
One of the things that I'm curious about: How easy / hard is it to use the same NES game with higher resolution / color graphics, and sample-based sound?

Are there any emulators out there that let you swap in higher resolution assets so a game can be freshened without a complete port?

kekebo•32m ago
Idk about swapping assets but zsnes used to have a range of video filters that could improve the experience on a modern screen quite a bit.

Edit: For SNES, not NES, my bad.

unleaded•21m ago
Mesen has texture packs. Don't know about sound, you'd have to reverse each game's sound driver first. https://vgmpf.com/Wiki/index.php?title=Famicom/NES_Sound_Dri...
BSPtree•21m ago
I would not think so, at least not in a meaningful way. That would require to edit the cartridge data thus the ROM, as all sprite data was contained within the cartridge. Sample based sound is impossible natively, as NES and older game consoles don't work with digital data but synthesizers. You could perhaps synthesize the music to WAV files and then enchance it. But then again, NES and thus its emulators have no way of playing digitized audio!
cowlevel•17m ago
The NES in particular is probably not too difficult to upscale, because the graphics data is stored on its own ROM chip (sometimes RAM) in a well structured layout. SMB1 just uses a ROM chip containing many tile graphics which the CPU code addresses by tile index. It would be really easy for an emulator to use the same tile indices to address any arbitrary set of tiles loaded from a PNG. Some games use RAM, which makes it harder as you'd have to index the PNG by hash or something.
pantelisk•12m ago
Compute motion vectors, faux depth, and add DLLS5 to it maybe? Could be pretty cool, or pretty horrific. Only one way to find out :)
einpoklum•29m ago
Most of the keys aren't working for me in Firefox though :-(
tevlon•9m ago
i only testing in chrome. Will look into it!

HackerTube: YouTube built from videos recommended by HN

https://karpathy.bearblog.dev/hacker-tube/
114•karpathy•1h ago•64 comments

TCP Use-After-Free: CVE-2026-98432 / CVSS 9.8

https://atlasum.net/blog/cve-2026-98432-linux-ipv4-tcp-uaf
116•oger•1h ago•59 comments

The Duty of a Scholar

https://www.daemonology.net/blog/2026-10-31-The-Duty-of-a-Scholar.html
51•gslin•1h ago•10 comments

It's the Memory Latency, Stupid

https://pivotlake.io/blog/its-the-memory-latency-stupid/
45•ntur1337•2h ago•6 comments

Common Desktop Environment available now as open-source

https://sourceforge.net/projects/cdesktopenv/
7•torcete•18m ago•5 comments

GPT-5.6 Sol can beat Factorio on peaceful mode

https://ryanmadden.net/gpt-56-beats-factorio/
103•ryanmadden•2h ago•105 comments

Much Ado About None: Sentinel Values in Python

https://florianwilhelm.info/2026/10/sentinel_values/
19•sebg•1d ago•6 comments

Molly (Signal fork) has not been updated since 3 months and is vulnerable

https://piefed.world/post/1503394
274•DeepLogin•10h ago•158 comments

Jepsen: ParticleDB 1.1.4

https://jepsen.io/analyses/particledb-1.1.4
125•aphyr•7h ago•65 comments

Do the math: How we took over ChatGPT accounts

https://www.parameter.ai/labs/we-found-a-gap-at-openai
283•armcat•10h ago•139 comments

Show HN: NES Contra (1987) port (ASM –> C and then C –> WebAssembly)

https://epoyraz.github.io/nes-contra-us/
13•tevlon•1h ago•10 comments

Show HN: A language model that lives in a boot sector

https://github.com/kerlenton/bootgpt
20•kerlenton•8h ago•0 comments

William Nordhaus has died

https://news.yale.edu/2026/10/31/william-nordhaus-nobel-laureate-who-integrated-economics-and-cli...
33•ilreb•3h ago•7 comments

5 years of OqtaDrive: Microdrive emulation to Sinclair Network over the internet

https://oqtadrive.org/10.other/5-years/
6•xelalex•1d ago•1 comments

Redox: Ring Buffers Project Summary

https://www.redox-os.org/news/nlnet-rb-summary/
35•g0xA52A2A•3d ago•4 comments

Noctua Fan Swap on a Calnex Rb/GPS Frequency Reference

https://www.jeffgeerling.com/blog/2026/noctua-fan-swap-calnex-rb-gps-frequency-reference/
24•aray07•2d ago•11 comments

Simple circuits can create complex behaviors

https://aatishb.com/myriad/lets-build-a-brain/
181•aatish•4d ago•58 comments

Reading and writing are less symmetric than you (probably) think

https://fgiesen.wordpress.com/2015/10/25/reading-and-writing-are-less-symmetric-than-you-probably...
60•luu•3d ago•19 comments

Switch Lowering in GCC

https://xoranth.net/gcc-switch/
182•signa11•12h ago•34 comments

Digital minimalism

https://vitalik.eth.limo/general/2026/10/31/digital_minimalism.html
273•wilbertliu•14h ago•204 comments

Serbia just elected the world's brainiest parliament

https://www.science.org/content/article/serbia-just-elected-world-s-brainiest-parliament
743•input_sh•10h ago•432 comments

Show HN: Ghostman – A fast, keyboard-driven TUI API client and webhook inspector

https://github.com/4yk5/Ghostman
33•4yk5•1d ago•23 comments

Malware uses LLMs to rank victims by how much they're worth

https://blog.talosintelligence.com/appraisal-by-ai-model-driven-victim-prioritization-in-the-volt...
211•khalidkhair•6h ago•116 comments

AI, Lean, and the Future of Formal Verification, with Lean Creator Leo de Moura

https://thedataexchange.media/leo-de-moura-lean-aws/
176•datascientist•2d ago•38 comments

I post trained a model on Demoscenes

https://datavorous.com/writing/demoscener/
33•datavorous_•2h ago•18 comments

Show HN: A USB-C LTE modem that gives my computer a phone line

https://github.com/Koppar-AI/koppar-lte-modem
25•abijahkaj•5h ago•12 comments

Anthropic blocks users for anything touching training larger models

https://twitter.com/jiahaoshao1/status/2116475922190922088
24•pretext•1h ago•3 comments

The Impact of Generative AI on Critical Thinking: Self-Reported (2025)

https://dl.acm.org/doi/full/10.1145/3706598.3713778
65•the-mitr•2h ago•43 comments

Casio Watches of the 1980s

https://www.casio.com/us/watches/50th/Heritage/1980s/
172•karagenit•5h ago•93 comments

Show HN: Marelleo, an open-source story box I built for my kids using ESP32

https://zebra.rodeo/en/blog/marelleo/
175•foOg•4d ago•47 comments