Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Making 8-bit Arcade Games in C

    Making 8-bit Arcade Games in C

    Steven Hugg · 2017

    Other
    Open LibraryAmazon
    Stats for nerds
    3recommend
    4mentions
    4people
    2018–2022years
    75% recommend25% neutral

    Mentions per year

    20182019202020212022

    What Hacker News says

    1. myth_drannonNov 2022
      Steve Hugg has a few nice books on the topic https://8bitworkshop.com/ Like "Making 8-Bit Arcade Games in C" and "Making Games For The Atari 2600"
      thread
    2. jackhackAug 2018
      ha! Yeah, I guess that's the secret -- just do something for a 10,000 hours and it comes naturally. But I still remember the learning process "X and Y index, what's that good for? and why do I need an accumulator? Stack? flags? Rotate?" but once I put that first pixel on the screen and made it move, I was hooked.

      what's funny to me is the idea that a person can go do something else for 10 or 20 years (C, C++, DotNet, robotics) and barely touch a line of assembly, yet it's all still there waiting. Maybe it's because game development in 6502asm was at the start of my career and I was so passionate about it, but some things are just ingrained. Even stuff like favoring zero-page memory (the first 256 bytes of memory from $0000 to $00FF) because it can be accessed in one cycle instead of two like indexed, offset or direct access memory. Later, moving to the 68000 family felt like a high-level language (Multiply AND divide opcodes -- you mean I don't have to write a multiply routine?)

      But having a asm background has ruined me in some ways. Learning C was straightforward enough, and the jump to C++ felt very natural. However, I find modern languages repulsively inefficient (e.g. Ruby) and struggle with functional programming (Lisp, Elixir). Python feels reminiscent to Applesoft BASIC so while I have to look up the syntax every time, it still feels normal.

      somewhat related, since I'm rambling...

      I recently read "Making 8-bit arcade games in C" by Steven Hugg and found it brought on a strong dose of nostalgia. It's a really ambitious book that attempts to give a feel for programming various 8bit game platforms, and covers some surprisingly advanced techniques and some basic stuff that schools may not event each any longer (two's complement, run-length encoding, interrupts, etc.). The book has some rough edges and wanders a bit but the good parts easily outweigh the defects. It achieves its aim of

      Speaking of game programming -- how about meta-game programming? programming in a game.

      I bought a game called TIS-100, and found it to be loads of fun in the same way a mechanic might buy a derelict car and restore it to new condition, or an EE might fiddle around with an old tube radio just for fun. The premise is that an uncle dies suddenly/disappears and leaves a prototype computer behind. Hidden in this computer are some signal processing circuits that hold a secret. You (the player) are tasked with restoring this prototype military computer to unlock the knowledge held within. Very simple, only a handful of opcodes, but it's a challenge and fun in a way I haven't felt since the 80s. Being forced to juggle a variable around on the stack or between indexes or the accumulator an only having a few bytes of storage requires a different type of thinking. Good stuff.

      TIS100 definitely isn't for everyone and the challenge curve gets rather steep but once I "got it" it was one of those stay-up-all-night challenges. https://store.steampowered.com/app/370360/TIS100/

      great review: https://blog.codinghorror.com/heres-the-programming-game-you...

      thread
    3. hugjaMar 2018
      Retro Game Dev: C64 Edition[1] build two games (shooter/platformer) in 6502 Assembly Language for a Commodore 64 emulator. Some other similar books are Making 8-bit Arcade Games in C[2] and Making Games for the Atari 2600[3].

      - [1] https://www.amazon.com/dp/0692980652/

      - [2] https://www.amazon.com/dp/1545484759/

      - [3] https://www.amazon.com/dp/1541021304/

      thread
    4. sixothreeJan 2019
      I actually just finished reading "Making 8-Bit Arcade Games in C" in its entirety.

      It definitely has a target audience: Those who know how to program in a language resembling C, who don't know assembler, don't care to learn assembler, but can understand basic syntax of assembler. And most importantly it is for people who want to gain an understanding of the internal hardware of some vintage arcade machines.

      I was surprised to learn that Robotron doesn't use sprites.

      thread

    Related

    Cover of Making Games for the Atari 2600
    2016–2022

    Making Games for the Atari 2600

    Steven Hugg
    5 recommend · 9
    Cover of Retro Game Dev
    2018–2019

    Retro Game Dev

    Derek Morris
    2 recommend · 2
    Cover of Code Complete
    2007–2026

    Code Complete

    Steve McConnell
    393 recommend · 894
    Cover of Designing Video Game Hardware in Verilog
    2020–2024

    Designing Video Game Hardware in Verilog

    Steven Hugg
    4 recommend · 5
    Cover of The C Programming Language
    2007–2026

    The C Programming Language

    Brian W. Kernighan
    246 recommend · 604
    Cover of Game engine architecture
    2011–2026

    Game engine architecture

    Jason Gregory
    35 recommend · 55
    Cover of Game Programming Patterns
    2012–2026

    Game Programming Patterns

    Robert Nystrom
    120 recommend · 161
    Cover of Designing Games
    2013–2026

    Designing Games

    Tynan Sylvester
    15 recommend · 19