Hey guys. I’m basically here because I’m trying to bring back microcomputing…
DOKI 64 is a fantasy microcomputer that serves a similar need to fantasy consoles like PICO-8, but instead of emulating the system in software, DOKI 64 runs on commonplace hardware, so building a compatible clone is easy and affordable.
The main components you need are a RaspberryPi 3 Model B+, a (preferably mechanical) US keyboard and any model of 8Bitdo Pro controller (no mouse).
Once you have the system built, you will also need a TV set (or PC monitor) with a 1366x768 resolution, an amp and a pair of stereo speakers.
Note: Having a pair of analogue sticks is a killer feature for any system that supports hi-bit games. Many classic games (from Metal Slug to Yoshi’s Island to every sports game ever) struggled with movement and aiming, due to the limitations of D-pads. Modern controls are key to many hi-bit games (like Geometry Wars).
Doki Linux is an operating system, derived from Raspbian Stretch Lite. It uses shells and console applications, running in terminals, as the primary interface.
Note: The terminals use a bitmapped font (Terminus at 16x32) and a simple palette, which ensures that text looks perfect, even on cheap TV sets.
Doki Linux does not use X or the usual graphical applications at all, instead integrating raylib (which uses the VideoCore IV GPU to render directly to the framebuffer) for graphics, audio, user input etc.
Note: The OS will run butter smooth on the 3B+ hardware (unlike Raspbian).
Doki Linux uses Python extensively, primarily for terminal software (text based games, chiptune trackers etc), and uses Python Prompt Toolkit (instead of GNU Readline).
While users have access to the usual repository of Debian packages, the focus of the project is on a relatively narrow stack (ARMv8 Assembly, C and CPython), and a relatively narrow scope (games, chiptunes and electronics).
While people can do whatever they like, the end goal of the project is a community that builds uniform clones of a small, affordable system, with excellent documentation, that is stable over decades.
In the name of stability, it makes sense to use Python2.7 (with ARMv8 Assembly and C17), as those standards will never change, and there is a well established ecosystem of libraries and documentation etc. I’m still apprehensive about adopting Python2 though. Until I figure that kind of thing out, nothing much will happen.
I’d obviously appreciate any feedback, criticism, bike-shedding - any help at all.
If you set up the hardware described above (or something similar enough for now), install Raspbian Stretch Lite, run `sudo dpkg-reconfigure console-setup` and change the font to Terminus at 16x32, install raylib to work without X, and then install Prompt Toolkit, you’ll have the same system I have at this stage. Unless you want to help design Doki, there isn't much point at this stage though. I'm really just explaining why I'm here.