Developing a Dungeons & Dragons style NES RPG in 6502 assembly must have been tough, even if its programmer thought the job was "pretty simple" due to his experience with the Apple II.*
Still, the code was fairly buggy, as illustrated in this cool video below
* www.gamesradar.com/games/final-...
Posts by Chris Williams
Textbook cover in the style of a Dabs Press publication, which reads: Mike Ginns RISC-V Assembly Language The Complete Programming Course New architecture edition covers RV32I & RV64I Dabs Press (With a wireframe drawing of someone's arm as an illustration)
Nice. With apologies to Mike Ginns who wrote this sterling book that taught me Arm assembly language...
www.computinghistory.org.uk/det/12421/Ar...
...a future one about RISC-V might look like:
Ha, yes. If I had time, I would. Read a ton of Usborne books like this growing up
It's in the Internet Archive, for those who are curious.
archive.org/details/mach...
I remember that article and issue! I thought at the time, wow, that guy has a sweet gig compiling magazine CDs and must have a sweet setup to do so.
I spent months roaming those CDs, so thanks!
That's a serious what the... from me
Super-in-depth look at the 6502 assembly in a NES game, with lessons for today's code in terms of performance optimization decisions and missteps
A cool demonstration of Zig as a language IMO: a PlayStation 1 emulator with built-in dissembler and debug. It emulates the 32-bit MIPS 3000A-based CPU core as well as the Sony GPU, GTE, SPU, and more
Readable code, too, and links to system reference info
github.com/maxpoletaev/...
My doctor hates this but I 100% am all for it
New year, new account, same great open source energy. We are ready to see what you ship ๐ข
New year's resolution, engage with open source developers on our new Bluesky account. โจ
This is going to date me, but in college I studied 90 to 45nm processes for my EE degree. I asked a professor about sub-45 and his response was: "oh, that's just dark magic."
I dunno how he'd describe sub-10nm. Anyway, if you don't know how modern chips are made, check this out
A frame from the start of a 1980s Computer Chronicles episode, with host Stewart Cheifet sitting in front of a background featuring the show's logo: the computer chronicles
RIP Stewart Cheifet. who died December 28. He was 87.
I have no doubt his work creating and hosting the Computer Chronicles from 1984 to 2002 inspired many future journalists and engineers. Certainly was for me.
obits.goldsteinsfuneral.com/stewart-chei...
en.wikipedia.org/wiki/Compute...
UNIX V4 tape successfully recovered: First ever version of UNIX written in C is running again
www.theregister.com/2025/12/23/u...
Crucial early evolutionary step found, imaged, and ... amazingly ... works
<- by me on @theregister.com
This was pretty interesting, hearing how the small team behind the 8-bit BBC Acorn computer went from specifying ULA chip designs to designing the early Arm CPU series from scratch using BBC BASIC
www.youtube.com/watch?v=W2yD...
At least it's ripe for puns
It definitely has a ring to it
View of the Golden Gate Bridge in San Francisco on a clear sunny day, from the Baker Beach trail
View of the Pacific Ocean, looking south from the Baker Beach trail in San Francisco on a sunny day as the sun starts to set
And on to another week. Grateful for everything, especially these views from the weekend.
To build and run on Linux:
1. Make sure you've installed:
* clang
* lld
* Qemu with the 32-bit RISC-V system emulator
2. Clone the repo from GitHub and edit its run-dot-sh file so:
CC=clang
OBJCOPY=llvm-objcopy
3. Run in a terminal: ./run.sh
It has:
* Basic process multi-tasking
* Paging
* An exception and system call handler
* A virtio-blk device driver to read and write a disk
* Simple command-line shell
An MIT-licensed starting point for folks. For more info, see:
seiya.me/blog/operati...
OpenSBI v1.5.1 ____ _____ ____ _____ / __ \ / ____| _ \_ _| | | | |_ __ ___ _ __ | (___ | |_) || | | | | | '_ \ / _ \ '_ \ \___ \| _ < | | | |__| | |_) | __/ | | |____) | |_) || |_ \____/| .__/ \___|_| |_|_____/|____/_____| | | |_| Platform Name : riscv-virtio,qemu Platform Features : medeleg Platform HART Count : 1 Platform IPI Device : aclint-mswi Platform Timer Device : aclint-mtimer @ 10000000Hz Platform Console Device : uart8250 Platform HSM Device : --- Platform PMU Device : --- Platform Reboot Device : syscon-reboot Platform Shutdown Device : syscon-poweroff Platform Suspend Device : --- Platform CPPC Device : --- Firmware Base : 0x80000000 Firmware Size : 319 KB Firmware RW Offset : 0x40000 Firmware RW Size : 63 KB Firmware Heap Offset : 0x47000 Firmware Heap Size : 35 KB (total), 2 KB (reserved), 10 KB (used), 22 KB (free) Firmware Scratch Size : 4096 B (total), 244 B (used), 3852 B (free) Runtime SBI Version : 2.0 Boot HART ID : 0 Boot HART Domain : root Boot HART Priv Version : v1.12 Boot HART Base ISA : rv32imafdch Boot HART ISA Extensions : sstc,zicntr,zihpm,zicboz,zicbom,sdtrig,svadu Boot HART PMP Count : 16 Boot HART PMP Granularity : 2 bits Boot HART PMP Address Bits: 32 Boot HART MHPM Info : 16 (0x0007fff8) Boot HART Debug Triggers : 2 triggers Boot HART MIDELEG : 0x00001666 Boot HART MEDELEG : 0x00f0b509 [ snipped ] virtio-blk: capacity is 0 bytes file: hello.txt, size=83 file: meow.txt, size=6 > hello Hello world from shell!
If you want to get started writing your own kernel for 32-bit RISC-V from scratch, here's how seiya.me did it in 1,000 lines of cleanly written C. There's documentation to go with it. Pretty cool IMHO!
github.com/nuta/operati...
This is partially why I wanted to move from media to tech. After 20 years of publishing, from London riots to cyber-attacks, I no longer wanted to be so immersed in it.
A 1956 general-purpose digital computer, the Bendix G-15, plus an algorithm from the modern-day CERN ATLAS experiment equals... this:
www.youtube.com/watch?v=2y0D...
What takes under a microsecond on hardware today takes about 15 minutes on this vacuum-tube machine
Still from Displaced Gamers' https://www.youtube.com/watch?v=3G6vkRz-_0I video that depicts a frame from the NES game Metroid overlaid with statistics and a list of subroutines called in the game loop. The statistics show the percentage of time per frame spent in each subroutine as well as total frame counts and rendered frame counts.
Wonderfully detailed per-frame performance analysis of NES Metroid, and why it lags at certain points. It's super interesting to see the software engineering decisions taken back in the day.
As always, a great video by @displacedgamers.bsky.social IMO
www.youtube.com/watch?v=3G6v...
#ziglang โs Lovely Syntax
matklad.github.io/2025/08/09/z...
A large display in front of Manchester Piccadilly Station, England, shows a Windows blue-screen-of-death. Source: https://www.theregister.com/2016/08/29/bsods_at_scale_we_laugh_at_your_puny_five_storeys_heres_our_six_storey_fail/
Also not quite Times Square, but Manchester Piccadilly Station in the UK was hard to miss
I like alternative languages and architectures to see how syntax, structure, and other implementation details can be done differently.
There's not only ziglang.org which I think is cool, but also SystemVerilog alternative Veryl: github.com/veryl-lang/v... Yet another side project coming on.