Making a new game console (yes really)

greedostick

Last Blade Swordsmith
20 Year Member
Joined
Aug 11, 2003
Posts
4,859
This looks interesting. Have you considered down the road giving developers a way to order labels, cases, and inserts to distribute games?
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
This looks interesting. Have you considered down the road giving developers a way to order labels, cases, and inserts to distribute games?
Yeah, I'm checking out the options now. I'm imagining something the size of a CD case, but with a foam cut-out for the SD card inside. That should be simple enough to get done cheap. Printed SD card labels are already a cheap item you can buy from AliExpress.

The cards themselves could just be off-the-shelf SD cards at first - it's a standard feature of an SD card, that you can switch it permanently read-only. (Making a card partially-read-only is a huge pain in the ass and companies charge a $30-$40 premium per card for it. That's why the Neki32 console has separate savegame memory instead.)

Fancy copy-protected cards are going to take some work. I'm confident that I can write the firmware for it, but getting it physically into a card could be difficult. The first model might look like a Turbo EverDrive, all piled on a circuit board. (I did consider making a separate cartridge form-factor, to make this part easier. But then I'd need to develop the physical cases for the carts, as well as the slot and connector on the console, and would lose the economy-of-scale of SD cards.)
 

tcdev

Crossed Swords Squire
Joined
Aug 22, 2002
Posts
183
Ultimately I think the copy protection needs to be done per-game. I'm planning that the game cards themselves will contain features to prevent duplicating them. The console itself won't enforce anything. Yes, that's giving up some of the benefit of a game console, from a developer's point of view. But...

Honestly, I think the audience for this console is going to be the sort of user that appreciates and respects this for what it is, and is generally unlikely to engage in any large-scale pirating. And at the end of the day, one or two people working on protection will never out-smart a potentially large team of experienced hackers. Even the big players can't get it right...
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
Chatted with my friends at fullset.io and picking one of these up to tinker with…
Honestly, I think the audience for this console is going to be the sort of user that appreciates and respects this for what it is, and is generally unlikely to engage in any large-scale pirating. And at the end of the day, one or two people working on protection will never out-smart a potentially large team of experienced hackers. Even the big players can't get it right...
Thanks for the orders! I'm probably the first company exporting with this tariff-code from Australia. I wonder if I'll show up on the government stats.

Yeah, anti-piracy isn't high on my list right now. I've set things up so a game could implement it: the game can read exactly the sectors it wants from the SD card, in exactly the order it wants. The OS doesn't cache or reorder the reads - that happens in libc inside the game process. So, in theory, there could be anything going on inside that game card, interacting with the program on the console. It can happen later without breaking compatibility.

I've been working on a port of SDL3 at the moment (and, indirectly, SDL2 and SDL1.2). Its software-rendering code runs reasonably fast.
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
I have some other commitments recently that need my time, but I'm still at this occasionally.

Hitting the SDK soon - an instruction-level simulator that can run a Neki32 game and connect to a debugger, all in software. It's crazy slow but accurate so far; I've been comparing traces of the real ARM CPU with my implementation and making sure things are exact every cycle.

Screenshot at 2025-05-14 13-53-23.pngScreenshot at 2025-05-14 13-46-57.pngScreenshot at 2025-05-14 13-44-45.png

The "consumer version" console is going to be quite similar to the devkit, but with a faster CPU - I found an Allwinner chip with an ARM926 that fits the bill. It can be clocked up to 700MHz according to some reports, and should do 576MHz reliably. The hardware is a bit on hold, as I don't have time to run around and talk to plastics companies. I do want a "real" case for it...
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
Big update to the SDK - I'm including a complete static-linked toolchain now. This doesn't make much difference on Linux or FreeBSD, where developers likely have gcc and friends already. On Windows, though, it means the tools work out-of-the-box. On a clean Windows 10 system, for example, you only need 7zip (to unzip the SDK), nothing else. From there on, everything is included - the examples build their ISO images from source without having to install Cygwin/Msys/MSVC++/whatever. I guess a developer also needs something to write the image to an SD card. Maybe that's something I can whip up, too.

http://nekisoft.com.au/neki32/sdk/pvmk-sdk-20250627.7z

Haven't packaged up the simulator yet - getting an independent, static version of wxWidgets is a pain in the ass. It builds okay on Windows, FreeBSD, and Linux, but doesn't make a portable file yet.

Also moving ahead with the plastic cases: I did a design that should work with a simple straight-pull mould. I'm waiting on some 3d-printed samples from plastics companies here in Perth.
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
I'm moving towards low-volume production of the plastic shells with (probably) polyurethane.

Here's what a consumer-version board looks like, test-fitted in a PLA print of the case:
1752646293338.png1752646314461.png1752646333563.png
(There's no power light because the final version will be translucent and the whole thing will glow.)
 

SpamYouToDeath

6150|!!|Heavy Machine Gunner
20 Year Member
Joined
Oct 3, 2005
Posts
6,193
I'm getting the materials together to start making the consumer consoles. One last feature made it in though - special editions! 32KB in the system ROM is reserved for a little extra graphic when the machine boots. Like so:
20250914_221801.jpg
It's really only visible if there's no game inserted, as otherwise the game boots faster than you can see it.
 

ysselcneogeo

Fio's Quartermaster
10 Year Member
Joined
Jun 8, 2012
Posts
496
So im a little confused. Isnt this kinda like exactly what a evercade is?

Haven't had much more time to work on this recently.

For those curious, here's how Quake runs on an ARM processor with no floating-point unit...
Is this running a software renderer ? I dont know shit about arm Im mean im assuming they've got some sort of built in gpu but is that in the actual cpu or is that just on the mobo chip set?
 
Last edited:
Top