NESFab, a new programming language for NES games by Pubby Games

screenshot1.png

Developing homebrew games for retro consoles has always been a really in-depth process, with developers requiring to know a lot of the technical details about the console to even attempt starting a "Hello World" program for any given device. Not only that, but usually when it comes to retro consoles, anyone attempting to develop for one would be required to know an assembly language specific to that console's chipset, for example, the NES worked with 6502 assembly, SNES with 65816, and so on, varying from console to console.

The homebrew community has since seen a huge step up in terms of giving support and new experiences to older consoles, with many homebrew devs working on all-new games, like E.T. for NES by Khan, or Classic Kong, a remake of the original Donkey Kong arcade game, for the SNES. The amount of new titles developed by homebrew developers surged during the last decade, with many tools and compilers being developed to aid in the development process.

NESFab is a new programming language created to help with the coding of NES games, recently released just a month ago in its initial 0.1 version. This programming language is specifically tailored with the 8bit limitation of the NES, with the creator claiming that this language is much more ergonomic to use than C, and also providing a much faster assembly code and better optimized than any other high-level compiler available, like GCC and LLVM.

The language does have its limitations though, as one of the most prominent cons of the language is that it only supports a select number of mappers for the system, and of course, developing a game in assembly code directly will always surpass any other type of language.

However, without any doubt, this will surely help in developing new titles for homebrew devs, and the creators of NESFab have also released an NES game purely developed with NESFab, titled "Hang Glider", which for those interested, they can try it out right now by getting the game from their website.

:arrow: Source
:arrow: GitHub Repository
 

VinsCool

Persona Secretiva Felineus
Global Moderator
Joined
Jan 7, 2014
Messages
14,600
Trophies
4
Location
Another World
Website
www.gbatemp.net
XP
25,218
Country
Canada
Looks pretty cool, the syntax looks like a hybrid between C and 6502 ASM, which is not too far from the C programs with Inline Assembly code baked into them, but without actually going for the full 6502 mnemonics there.
 

VinsCool

Persona Secretiva Felineus
Global Moderator
Joined
Jan 7, 2014
Messages
14,600
Trophies
4
Location
Another World
Website
www.gbatemp.net
XP
25,218
Country
Canada

J-Machine

Self proclaimed Pog champion
Member
Joined
Aug 25, 2011
Messages
940
Trophies
1
Location
A concrete Igloo
XP
1,698
Country
Canada
just looked at the nes maker site that was shared and boi howdy that's a garbage way to advertise things by not giving a price and then sending someone immediately to a paypal invoice. glad there is an alternative.
 
  • Like
Reactions: Henx and SylverReZ

SylverReZ

The planet is fine. The people are crazy.
Member
Joined
Sep 13, 2022
Messages
7,318
Trophies
3
Location
The Wired
Website
m4x1mumrez87.neocities.org
XP
22,580
Country
United Kingdom
just looked at the nes maker site that was shared and boi howdy that's a garbage way to advertise things by not giving a price and then sending someone immediately to a paypal invoice. glad there is an alternative.
Yes, and that's exactly why we have this as an alternative.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • SylverReZ @ SylverReZ:
    @mthrnite, Cheetah Girls, the sequel to Action 52's Cheetah Men.
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    Pokemon Black I played that one a lot
  • K3Nv2 @ K3Nv2:
    Honestly never messed with Pokémon on ds much
  • mthrnite @ mthrnite:
    I played pokemon once, was bored, never tried again
  • Psionic Roshambo @ Psionic Roshambo:
    Oh Dragon Quest IX
  • K3Nv2 @ K3Nv2:
    Spent like 5 hours on switch one never touched it again
  • Psionic Roshambo @ Psionic Roshambo:
    Sentinel of the stary skies
  • K3Nv2 @ K3Nv2:
    Ds is 20 years old this year
  • Psionic Roshambo @ Psionic Roshambo:
    So MJ no longer wants to play with it?
  • K3Nv2 @ K3Nv2:
    He put it down when the 3ds came out
  • SylverReZ @ SylverReZ:
    @K3Nv2, RIP Felix does great videos on the PS3 yellow-light-of-death.
  • Jayro @ Jayro:
    Eventhough the New 3DS XL is more powerful, I still feel like the DS Lite was a more polished system. It's a real shame that it never got an XL variant keeping the GBA slot. You'd have to go on AliExpress and buy an ML shell to give a DS phat the unofficial "DS Lite" treatment, and that's the best we'll ever get I'm afraid.
    +1
  • Jayro @ Jayro:
    The phat model had amazingly loud speakers tho.
    +1
  • SylverReZ @ SylverReZ:
    @Jayro, I don't see whats so special about the DS ML, its just a DS lite in a phat shell. At least the phat model had louder speakers, whereas the lite has a much better screen.
    +1
  • SylverReZ @ SylverReZ:
    They probably said "Hey, why not we combine the two together and make a 'new' DS to sell".
  • Veho @ Veho:
    It's a DS Lite in a slightly bigger DS Lite shell.
    +1
  • Veho @ Veho:
    It's not a Nintendo / iQue official product, it's a 3rd party custom.
    +1
  • Veho @ Veho:
    Nothing special about it other than it's more comfortable than the Lite
    for people with beefy hands.
    +1
  • Jayro @ Jayro:
    I have yaoi anime hands, very lorge but slender.
  • Jayro @ Jayro:
    I'm Slenderman.
  • Veho @ Veho:
    I have hands.
    Veho @ Veho: +1