This commit is contained in:
Miloslav Ciz 2022-04-11 18:45:44 +02:00
parent ad727dcdc6
commit 042855dcc7
2 changed files with 32 additions and 7 deletions

View file

@ -2,21 +2,21 @@
{ Open consoles are how I got into [suckless](suckless.md) programming, they taught me about the low-level, optimizations and how to actually program efficiently on very limited hardware. I recommend you grab one of these. ~drummyfish }
Open consoles are tiny Gameboy-like gaming consoles powered by [free software](free_software.md) and [hardware](free_hardware.md), which have relatively recently seen a small boom. Examples include [Arduboy](arduboy.md), [Pokitto](pokitto.md) or [Gamebuino](gamebuino.md). These are **NOT** the raspberry pi handhelds that run Gameboy emulators.
Open consoles are tiny [GameBoy](gameboy.md)-like gaming consoles powered by [free software](free_software.md) and [hardware](free_hardware.md), which have relatively recently seen a small boom. Examples include [Arduboy](arduboy.md), [Pokitto](pokitto.md) or [Gamebuino](gamebuino.md). These are **NOT** to be confused with the [Raspberry Pi](rpi.md) handhelds that run GameBoy emulators.
In summary, open consoles are:
- **Gameboy-like gaming consoles** (but also allow and encourage non-gaming uses).
- Powered by **[free hardware](free_hardware.md) and [free software](free_software.md)** (usually [Arduino](arduino.md) plus a custom library, although mostly advertised as [open source](open_source.md) and not so strict about freedom).
- **GameBoy-like gaming consoles** (but also allow and encourage non-gaming uses).
- Powered by **[free hardware](free_hardware.md) and [free software](free_software.md)** (usually [Arduino](arduino.md) plus a custom library, although mostly advertised as [open source](open_source.md) and not so strict about freedom). Schematics are a lot of times available.
- **Retro**.
- **Indie** (sometimes developed by a single guy), often [crowd-funded](crowd_funding.md).
- **Educational**.
- **[DIY](dyi.md)**, often leaving assembly to the customer.
- **Cheap** (compared to proprietary mainstream consoles).
- **Hacking friendly**.
- **Very cheap** (compared to proprietary mainstream consoles).
- **[Hacking](hacking.md) friendly**.
- Typically **[embedded](embedded.md) [ARM](arm.md)**.
- **[Bare metal](bare_metal.md)** (no operating system).
- Pretty **low spec** hardware (RAM amount in kilobytes, CPU frequency in MHz).
- Pretty **low spec** hardware ([RAM](ram.md) amount in kilobytes, CPU frequency in MHz).
- Relying on **user created games** which are many times also free-licensed.
Recommended consoles for starters are [Arduboy](arduboy.md) and [Pokitto](pokitto.md) which are not only very well designed, but most importantly have actual friendly active communities.
@ -25,7 +25,7 @@ These nice little toys are great because they are anti-[modern](modern.md), [sim
## Programming
Open consoles can be programmed without proprietary software, GNU/[Linux](linux.md) works just fine. Most of the consoles are [Arduino](arduino.md)-based so the Arduino IDE is the official development tool with [C++](cpp.md) as a language ([C](c.md) being thankfully an option as well). The IDE is "open-source" but also [bloat](bloat.md); thankfully CLI development workflow can be set up without greater issues (Arduino comes with CLI tools and for other platforms gcc cross-compiler can be used) so comfy programming with [vim](vim.md) is nicely possible.
Open consoles can be programmed without proprietary software, GNU/[Linux](linux.md) works just fine. Most of the consoles are [Arduino](arduino.md)-based so the Arduino IDE is the official development tool with [C++](cpp.md) as a language ([C](c.md) being thankfully an option as well). The IDE is "open-source" but also [bloat](bloat.md); thankfully [CLI](cli.md) development workflow can be set up without greater issues (Arduino comes with CLI tools and for other platforms [gcc](gcc.md) cross-compiler can be used) so comfy programming with [vim](vim.md) is nicely possible.
If normies can do it, you can do it too.