Timo 2018-10-18 08:40
I decided to create NX after I got dissatisfied with the old LowRes Coder app and discovered the amazing PICO-8 and other "fantasy consoles". LowRes NX was made with the same idea, but has some important differences:
- Others use Lua as the language, which is a good way to learn simple but modern programming. NX uses BASIC, which is simple but not so modern. It may even harm your programming style, but personally I think it’s fun (especially if you usually try to write clean code).
- Others have a screen buffer where you just draw anything you want. This is the standard for modern game programming, but it’s not the way old game consoles worked. In NX you don’t draw anything, there is not even a screen buffer. You just have your two tile-based backgrounds and 64 sprite objects. You can move them, set their characters, colors and attributes, and even modify everything in any scanline of the screen! This way you learn basic concepts of consoles like the NES, Game Boy, SNES, Master System, Mega Drive (Genesis) etc.
- Others have a fixed memory layout for the cartridge ROM, which is copied to RAM when a program is run. This makes it very easy to get started, but things get dirty when you want to liberate your program from the given limits. NX has a fixed layout for video RAM and registers, just as old hardware, but the cartridge ROM can be filled with any data you wish! You can decide if you want to use its space more for graphics, or more for maps, or more for music. And all the data in ROM is directly accessible by your code, there is no need to copy it to RAM (except for graphics).
- Others have built in tools for graphics, maps and sound. This makes them easy and quick to use, but less flexible. Tools in NX are actual BASIC programs, which you can change if needed. To share data between a tool and your game, NX simulates a simple disk drive, which stores data in the same format as used in your game code.
- NX and its tools are designed for mobile devices with touch screens, while keeping it compatible with desktop systems. The built in tools of other fantasy consoles have small buttons and require a mouse. Games may be playable on mobile devices, but currently their editors don’t look like they will work.
In the end it's all about personal taste and you can choose what you prefer.