[HN Gopher] NESFab - A new programming language for creating NES...
___________________________________________________________________
NESFab - A new programming language for creating NES games
Author : redbell
Score : 205 points
Date : 2025-02-10 12:39 UTC (3 days ago)
(HTM) web link (pubby.games)
(TXT) w3m dump (pubby.games)
| pvg wrote:
| Show HN a couple of years ago
| https://news.ycombinator.com/item?id=35055308
| djmips wrote:
| I've been using this and it's a lot of fun
| jkosoy wrote:
| +1. It's a lot of fun, it makes 6502 more approachable and it's
| deeply satisfying. I've been making a game with my daughter.
| snvzz wrote:
| The code is GPLv3:
| https://github.com/pubby/nesfab/blob/master/COPYING
|
| While software made using this SDK can be any license, as stated
| in the readme:
|
| >TL;DR: If you make a game using NESFab, your code can remain
| private, and you do not need to include attribution in your
| binary release.
| rvnx wrote:
| It means it is actually LGPL in practice then ?
| mijoharas wrote:
| To clarify, the _compiler_ is GPL (as is GCC, GPL doesn't
| mean that artefacts created with it share that license), but
| the standard library is the boost software license (which is
| not a copyleft library) so any machine code artefacts can
| remain private and doesn't require attribution.
|
| [0] The NESFab standard library (lib/), examples (examples/),
| and documentation (doc/) are licensed under the Boost
| Software License 1.0 (See lib/LICENSE_1_0.txt).
| qwery wrote:
| No. The (GPL) license doesn't "infect" the output of the
| (GPL) software.
| colejohnson66 wrote:
| But it _does_ infect if some "standard library" is
| injected into the output. This is why glibc has a "linking
| exception".
| atan2 wrote:
| I just finished Gustavo Pezzi's NES course last year
| (https://pikuma.com/courses/nes-game-programming-tutorial). It
| was excellent and it gave me some great insights to how things
| work inside the NES using 6502. This looks a lot simpler. I'll
| take a look. :)
| agentultra wrote:
| Oh this is cool. One of my back-burner projects is a compiler
| targeting the 6502 specifically for NES development. This looks
| super nifty.
| breckinloggins wrote:
| When I was a kid in the 80s and early 90s I was fascinated with
| the process of making video games for my favorite console. But
| back then I didn't really know how to research that topic (and
| much of it - unbeknownst to me - was behind NDA anyway).
|
| One day I asked my friend if he knew how these games were
| programmed. He confidently claimed that they were made in a top
| secret tool called NPL - The Nintendo Programming Language.
|
| Of course that kid didn't know anything more about it than I did
| so this was just a wild rumor. Now I know that "NPL" was just
| 6502 assembly with the correct system documentation and some dev
| hardware, but kid me didn't know that. Instead, he spent a lot of
| time dreaming up what this super secret language looked like.
|
| When I checked out NESFab today I instantly saw something that
| looked very much like what 7 - 9 year old me would have imagined.
| So thanks for that.
| TriedWharf wrote:
| For me, it was the same but with the game boy. Turns out no-one
| knew the name of it. For some reason.
| pubby wrote:
| Hey, this is my project. Cool to see it here again.
|
| You might like this article I wrote on the backend:
| https://pubby.games/codegen.html
| asfasfds wrote:
| Nice read, thanks for the link!
| 999900000999 wrote:
| Would love this for GBA instead. Something about that system is
| so perfectly limiting.
| TriedWharf wrote:
| The SNES probably has tools like this, and a GBA is pretty
| similar limitation-wise to a SNES.
| namuol wrote:
| I often wonder what sort of tools like this must have existed in-
| house at the many small game development studios of the era.
|
| This one reminds me of another modern compiler for the
| Intellivision console called INTYBasic, which has an extremely
| impressive suite of games and NES remakes implemented in it:
|
| https://nanochess.org/intybasic.html
|
| https://youtu.be/h7ttNz2UVw8
|
| For something even higher level check out GBStudio:
|
| https://www.gbstudio.dev/
___________________________________________________________________
(page generated 2025-02-13 23:01 UTC)