Difference between revisions of "Fantasy console"
(added FantasyCade, updated links) |
(adding FC wiki link) |
||
(17 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
A '''fantasy console''' is a console that has no physical implementation; it only exists as a virtual machine. Like programming languages, fantasy hardware is sometimes built for entertainment purposes. The idea has recently gained popularity as the retrocomputing movement has gained steam with the resurgence of 80s nostalgia. | A '''fantasy console''' is a console that has no physical implementation; it only exists as a virtual machine. Like programming languages, fantasy hardware is sometimes built for entertainment purposes. The idea has recently gained popularity as the retrocomputing movement has gained steam with the resurgence of 80s nostalgia. | ||
− | For the | + | For the list below, '''Memory Mapped''' means that the console ''does'' attempt to map objects to a memory system. This may include memory banks, video RAM, and other memory-based affordances. If the system is not memory mapped, then the physical layout of memory is not a consideration for that console. |
− | + | ||
+ | To be considered for inclusion into this list, the fantasy console ''must'' have some sample demos, even if a full game is not available. | ||
+ | |||
+ | == List of Fantasy Consoles == | ||
{| class="wikitable" | {| class="wikitable" | ||
!Console Name | !Console Name | ||
!FC Language | !FC Language | ||
+ | !Build Language | ||
!License | !License | ||
!Platform(s) | !Platform(s) | ||
Line 13: | Line 17: | ||
|[https://paladin-t.github.io/b8/ BASIC8] by Tony Wang | |[https://paladin-t.github.io/b8/ BASIC8] by Tony Wang | ||
|[https://paladin-t.github.io/b8/docs/manual BASIC] | |[https://paladin-t.github.io/b8/docs/manual BASIC] | ||
+ | |C++ | ||
|[https://store.steampowered.com/app/767240/ $14.99] | |[https://store.steampowered.com/app/767240/ $14.99] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
|160x128 | |160x128 | ||
|? | |? | ||
+ | |||
+ | |- | ||
+ | |[https://davidbyers.itch.io/bitmelo Bitmelo] by David Byers | ||
+ | |[https://bitmelo.com/api/ JavaScript] | ||
+ | |JavaScript | ||
+ | |[https://github.com/byersdz/bitmelo MIT] | ||
+ | |Windows, Browser | ||
+ | |320x180 | ||
+ | |No | ||
|- | |- | ||
|[https://ledoux.itch.io/bitsy Bitsy] by Adam Le Doux | |[https://ledoux.itch.io/bitsy Bitsy] by Adam Le Doux | ||
|Instructions | |Instructions | ||
+ | |JavaScript | ||
|[http://ledoux.io/bitsy/editor.html Free] | |[http://ledoux.io/bitsy/editor.html Free] | ||
|Browser | |Browser | ||
− | |16x16 sprites (8x8 per sprite) | + | |16x16 1-bit sprites (8x8 per sprite) |
|? | |? | ||
+ | |||
+ | |- | ||
+ | |[https://github.com/bity-8/bity-8 BITY-8] by Alan Morgan | ||
+ | |Lua | ||
+ | |Rust | ||
+ | |[https://github.com/bity-8/bity-8 GPL v3] | ||
+ | |Cargo (Multiplatform) | ||
+ | |192x144 4-bit rewritable palette | ||
+ | |Yes | ||
|- | |- | ||
|[https://arkia.itch.io/chroma-60 CHROMA-60] by Arkia | |[https://arkia.itch.io/chroma-60 CHROMA-60] by Arkia | ||
|ASM | |ASM | ||
+ | |C | ||
|[https://arkia.itch.io/chroma-60 Free] | |[https://arkia.itch.io/chroma-60 Free] | ||
|Windows, Linux | |Windows, Linux | ||
Line 37: | Line 62: | ||
|[https://github.com/josefnpat/click4 Click4] by Josef Patoprsty | |[https://github.com/josefnpat/click4 Click4] by Josef Patoprsty | ||
|ASM | |ASM | ||
+ | |Löve | ||
|[https://github.com/josefnpat/click4/releases Free], [https://github.com/josefnpat/click4 MIT] | |[https://github.com/josefnpat/click4/releases Free], [https://github.com/josefnpat/click4 MIT] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
|64x64 | |64x64 | ||
− | | | + | |Yes |
|- | |- | ||
|[https://github.com/anael-seghezzi/CToy CToy] by Anaël Seghezzi | |[https://github.com/anael-seghezzi/CToy CToy] by Anaël Seghezzi | ||
+ | |C | ||
|C | |C | ||
|[http://anael.maratis3d.com/ctoy/bin/ Free], [https://github.com/anael-seghezzi/CToy zlib] | |[http://anael.maratis3d.com/ctoy/bin/ Free], [https://github.com/anael-seghezzi/CToy zlib] | ||
Line 53: | Line 80: | ||
|[https://github.com/drako0812/DRAK-0 DRAK-0] by Drew Wibbenmeyer | |[https://github.com/drako0812/DRAK-0 DRAK-0] by Drew Wibbenmeyer | ||
|ChaiScript, LuaJIT (coming soon) | |ChaiScript, LuaJIT (coming soon) | ||
+ | |C++ | ||
|[https://github.com/drako0812/DRAK-0/releases NYOP], [https://github.com/drako0812/DRAK-0 MIT] | |[https://github.com/drako0812/DRAK-0/releases NYOP], [https://github.com/drako0812/DRAK-0 MIT] | ||
|Windows | |Windows | ||
Line 61: | Line 89: | ||
|[https://betajaen.itch.io/dx8 DX8] by Robin Southern | |[https://betajaen.itch.io/dx8 DX8] by Robin Southern | ||
|ASM | |ASM | ||
+ | |C/ASM | ||
|[https://betajaen.itch.io/dx8 Free], [https://github.com/betajaen/dx8 MIT] | |[https://betajaen.itch.io/dx8 Free], [https://github.com/betajaen/dx8 MIT] | ||
|Windows | |Windows | ||
|320x256 | |320x256 | ||
|? | |? | ||
− | + | 99 | |
|- | |- | ||
|[https://mljware.itch.io/ecos ECoS] by MLJWare | |[https://mljware.itch.io/ecos ECoS] by MLJWare | ||
|Lua | |Lua | ||
+ | |Löve | ||
|[https://mljware.itch.io/ecos NYOP] | |[https://mljware.itch.io/ecos NYOP] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
|128x128, 1-bit | |128x128, 1-bit | ||
+ | |Yes | ||
+ | |||
+ | |- | ||
+ | |[https://corax89.github.io/esp8266Game/index.html ESP LGE] by Igor (corax89) | ||
+ | |C-like | ||
+ | |C++ | ||
+ | |[https://github.com/corax89/esp8266_game_engine GPL 3.0] | ||
+ | |ESPBoy, Browser | ||
+ | |128x128, 16 color palette switchable to any 16-bit (R5G6B5) value | ||
|Yes | |Yes | ||
Line 77: | Line 116: | ||
|[http://www.fancade.com/ Fancade] by Martin Magni | |[http://www.fancade.com/ Fancade] by Martin Magni | ||
|[http://wiki.fancade.com/ Visual Scripting] | |[http://wiki.fancade.com/ Visual Scripting] | ||
+ | |C | ||
|[http://www.fancade.com/ F2P] | |[http://www.fancade.com/ F2P] | ||
|iOS, Android | |iOS, Android | ||
Line 85: | Line 125: | ||
|[https://fazic.fazibear.me/ FAZIC] by Michał Kalbarczyk | |[https://fazic.fazibear.me/ FAZIC] by Michał Kalbarczyk | ||
|[https://fazic.fazibear.me/help BASIC] | |[https://fazic.fazibear.me/help BASIC] | ||
+ | |C++ | ||
|[https://fazic.fazibear.me/fazic Free] | |[https://fazic.fazibear.me/fazic Free] | ||
|Browser | |Browser | ||
Line 93: | Line 134: | ||
|[https://github.com/G-eon/g-eon-wiki/wiki G-eon] by Memorix101 | |[https://github.com/G-eon/g-eon-wiki/wiki G-eon] by Memorix101 | ||
|JavaScript | |JavaScript | ||
+ | |C++ | ||
|[https://memorix101.itch.io/g-eon NYOP] | |[https://memorix101.itch.io/g-eon NYOP] | ||
|Windows, Linux, Raspberry Pi | |Windows, Linux, Raspberry Pi | ||
|640x480 | |640x480 | ||
− | | | + | |No |
|- | |- | ||
|[https://poeticandroid.itch.io/homegirl Homegirl] by poeticAndroid | |[https://poeticandroid.itch.io/homegirl Homegirl] by poeticAndroid | ||
|Lua | |Lua | ||
+ | |D | ||
|[https://github.com/poeticAndroid/homegirl/ Free], [https://poeticandroid.itch.io/homegirl Pro (NYOP)] | |[https://github.com/poeticAndroid/homegirl/ Free], [https://poeticandroid.itch.io/homegirl Pro (NYOP)] | ||
|Windows, Linux, macOS | |Windows, Linux, macOS | ||
− | | | + | |16 different screen modes with a configurable aspect ratio, up to 256 colors from a 12-bit palette per screen |
|No | |No | ||
|- | |- | ||
|[http://pelulamu.net/ibniz/ IBNIZ] by viznut | |[http://pelulamu.net/ibniz/ IBNIZ] by viznut | ||
+ | |C | ||
|[http://pelulamu.net/ibniz/ibniz.txt Instructions] | |[http://pelulamu.net/ibniz/ibniz.txt Instructions] | ||
|[http://pelulamu.net/ibniz/ Free], [https://github.com/viznut/IBNIZ zlib] | |[http://pelulamu.net/ibniz/ Free], [https://github.com/viznut/IBNIZ zlib] | ||
Line 117: | Line 161: | ||
|[https://github.com/Torbuntu/Leikr Leikr] by Torbuntu | |[https://github.com/Torbuntu/Leikr Leikr] by Torbuntu | ||
|Groovy, but can use Java, Kotlin, Clojure, or Lua | |Groovy, but can use Java, Kotlin, Clojure, or Lua | ||
+ | |Java | ||
|[https://github.com/Torbuntu/Leikr/releases Free], [https://github.com/Torbuntu/Leikr Apache] | |[https://github.com/Torbuntu/Leikr/releases Free], [https://github.com/Torbuntu/Leikr Apache] | ||
|Linux, Raspberry Pi 3B/3B+, 3A+, ClockworkPi GameShell, Windows | |Linux, Raspberry Pi 3B/3B+, 3A+, ClockworkPi GameShell, Windows | ||
Line 125: | Line 170: | ||
|[https://ramilego4game.itch.io/liko12 LIKO-12] by RamiLego4Game | |[https://ramilego4game.itch.io/liko12 LIKO-12] by RamiLego4Game | ||
|Lua | |Lua | ||
+ | |Löve | ||
|[https://ramilego4game.itch.io/liko12 NYOP], [https://github.com/RamiLego4Game/LIKO-12 MIT] | |[https://ramilego4game.itch.io/liko12 NYOP], [https://github.com/RamiLego4Game/LIKO-12 MIT] | ||
|Windows, macOS, Linux, Android | |Windows, macOS, Linux, Android | ||
Line 133: | Line 179: | ||
|[http://lowres.inutilis.com LowRes Coder] by Timo Kloss | |[http://lowres.inutilis.com LowRes Coder] by Timo Kloss | ||
|[http://lowres.inutilis.com/app-user-guide/ BASIC] | |[http://lowres.inutilis.com/app-user-guide/ BASIC] | ||
+ | |? | ||
|[https://itunes.apple.com/us/app/lowres-coder-program-retro/id962117496?mt=8 $4.99 (F2P)] | |[https://itunes.apple.com/us/app/lowres-coder-program-retro/id962117496?mt=8 $4.99 (F2P)] | ||
|iOS | |iOS | ||
Line 141: | Line 188: | ||
|[https://lowresnx.inutilis.com/ LowRes NX] by Timo Kloss | |[https://lowresnx.inutilis.com/ LowRes NX] by Timo Kloss | ||
|[https://lowresnx.inutilis.com/manual.php BASIC] | |[https://lowresnx.inutilis.com/manual.php BASIC] | ||
+ | |? | ||
|[https://lowresnx.inutilis.com/ Free], [https://github.com/timoinutilis/lowres-nx LGPL3] | |[https://lowresnx.inutilis.com/ Free], [https://github.com/timoinutilis/lowres-nx LGPL3] | ||
|Windows, macOS, iOS | |Windows, macOS, iOS | ||
Line 149: | Line 197: | ||
|[https://github.com/Vulcalien/LuaG-Console LuaG Console] by Vulcalien | |[https://github.com/Vulcalien/LuaG-Console LuaG Console] by Vulcalien | ||
|Lua | |Lua | ||
+ | |Java | ||
|[https://github.com/Vulcalien/LuaG-Console/releases Free], [https://github.com/Vulcalien/LuaG-Console Apache] | |[https://github.com/Vulcalien/LuaG-Console/releases Free], [https://github.com/Vulcalien/LuaG-Console Apache] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
Line 157: | Line 206: | ||
|[https://arcade.makecode.com/ MakeCode Arcade] by Microsoft | |[https://arcade.makecode.com/ MakeCode Arcade] by Microsoft | ||
|[https://arcade.makecode.com/---docs#doc:reference Blocks], JavaScript, TypeScript | |[https://arcade.makecode.com/---docs#doc:reference Blocks], JavaScript, TypeScript | ||
+ | |? | ||
|[https://arcade.makecode.com/ Free], [https://github.com/Microsoft/pxt-arcade MIT] | |[https://arcade.makecode.com/ Free], [https://github.com/Microsoft/pxt-arcade MIT] | ||
|Browser, Raspberry Pi 0, [https://arcade.makecode.com/hardware custom handhelds] | |Browser, Raspberry Pi 0, [https://arcade.makecode.com/hardware custom handhelds] | ||
Line 165: | Line 215: | ||
|[https://morgan3d.github.io/nano/ nano Jammer] by Casual Effects | |[https://morgan3d.github.io/nano/ nano Jammer] by Casual Effects | ||
|[https://morgan3d.github.io/nano/doc/specification.md.html nano] | |[https://morgan3d.github.io/nano/doc/specification.md.html nano] | ||
+ | |? | ||
|[https://morgan3d.github.io/nano/ Free], [https://github.com/morgan3d/nano/ BSD] | |[https://morgan3d.github.io/nano/ Free], [https://github.com/morgan3d/nano/ BSD] | ||
|Browser | |Browser | ||
Line 173: | Line 224: | ||
|[https://egordorichev.itch.io/neko8 NEKO8] by Egor Dorichev | |[https://egordorichev.itch.io/neko8 NEKO8] by Egor Dorichev | ||
|Lua, BASIC, ASM, MoonScript | |Lua, BASIC, ASM, MoonScript | ||
+ | |? | ||
|[https://egordorichev.itch.io/neko8 NYOP], [https://github.com/egordorichev/neko8 ?] | |[https://egordorichev.itch.io/neko8 NYOP], [https://github.com/egordorichev/neko8 ?] | ||
|Windows, macOS, Linux, Android | |Windows, macOS, Linux, Android | ||
Line 181: | Line 233: | ||
|[https://github.com/nibbleteam/nibble Nibble] by Felipe Tavares | |[https://github.com/nibbleteam/nibble Nibble] by Felipe Tavares | ||
|Lua | |Lua | ||
+ | |? | ||
|Free | |Free | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
|400x240, 8 palettes of 16 colors (from 24-bit values) | |400x240, 8 palettes of 16 colors (from 24-bit values) | ||
+ | |Yes | ||
+ | |||
+ | |- | ||
+ | |[http://johnearnest.github.io/Octo/ Octo] by John Earnest | ||
+ | |ASM | ||
+ | |Javascript | ||
+ | |[https://github.com/JohnEarnest/Octo MIT] | ||
+ | |Browser | ||
+ | |64x32, 1-bit ([https://en.wikipedia.org/wiki/CHIP-8 CHIP-8 on Wikipedia]) | ||
|Yes | |Yes | ||
Line 189: | Line 251: | ||
|[https://mlepage.github.io/phosphor/ Phosphor] by Marc Lepage | |[https://mlepage.github.io/phosphor/ Phosphor] by Marc Lepage | ||
|Lua | |Lua | ||
+ | |? | ||
|[https://mlepage.github.io/phosphor/ Free], [https://github.com/mlepage/phosphor MIT] | |[https://mlepage.github.io/phosphor/ Free], [https://github.com/mlepage/phosphor MIT] | ||
|Browser | |Browser | ||
Line 197: | Line 260: | ||
|[https://www.lexaloffle.com/pico-8.php PICO-8] by Lexaloffle | |[https://www.lexaloffle.com/pico-8.php PICO-8] by Lexaloffle | ||
|Lua | |Lua | ||
+ | |? | ||
|[https://www.lexaloffle.com/pico-8.php $14.99] | |[https://www.lexaloffle.com/pico-8.php $14.99] | ||
|Windows, macOS, Linux, Raspbery Pi | |Windows, macOS, Linux, Raspbery Pi | ||
Line 205: | Line 269: | ||
|[https://zappedcow.itch.io/pix64 Pix64] by ZappedCow | |[https://zappedcow.itch.io/pix64 Pix64] by ZappedCow | ||
|PNG | |PNG | ||
+ | |C# (Monogame) | ||
|[https://zappedcow.itch.io/pix64 NYOP] | |[https://zappedcow.itch.io/pix64 NYOP] | ||
|Windows, Linux | |Windows, Linux | ||
Line 211: | Line 276: | ||
|- | |- | ||
− | |[https://www.pixelvision8.com/ Pixel Vision 8] by | + | |[https://www.pixelvision8.com/ Pixel Vision 8] by Jesse Freeman |
|Lua | |Lua | ||
− | |[https:// | + | |C# |
+ | |[https://github.com/PixelVision8/PixelVision8 MS-PL] (similar to MIT) | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
− | |256x240 | + | |256x240 base, customizable |
|Yes | |Yes | ||
Line 221: | Line 287: | ||
|[https://grapefruitopia.itch.io/prism-384 Prism-384] by Grapefruitopia Industries | |[https://grapefruitopia.itch.io/prism-384 Prism-384] by Grapefruitopia Industries | ||
|JavaScript | |JavaScript | ||
+ | |? | ||
|[https://grapefruitopia.itch.io/prism-384 $5] | |[https://grapefruitopia.itch.io/prism-384 $5] | ||
|Windows, macOS, Linux, Raspberry Pi | |Windows, macOS, Linux, Raspberry Pi | ||
Line 229: | Line 296: | ||
|[https://www.puzzlescript.net/ PuzzleScript], [http://dungeonscript.farbs.org/ DungeonScript] by Stephen Lavelle | |[https://www.puzzlescript.net/ PuzzleScript], [http://dungeonscript.farbs.org/ DungeonScript] by Stephen Lavelle | ||
|[https://www.puzzlescript.net/Documentation/documentation.html Instructions] | |[https://www.puzzlescript.net/Documentation/documentation.html Instructions] | ||
+ | |? | ||
|[https://www.puzzlescript.net/ Free], [https://github.com/increpare/PuzzleScript MIT] | |[https://www.puzzlescript.net/ Free], [https://github.com/increpare/PuzzleScript MIT] | ||
|Browser | |Browser | ||
Line 237: | Line 305: | ||
|[https://hallucino.itch.io/px8 PX8] by hallucino | |[https://hallucino.itch.io/px8 PX8] by hallucino | ||
|Lua, Python | |Lua, Python | ||
+ | |? | ||
|[https://hallucino.itch.io/px8 NYOP], [https://github.com/Gigoteur/PX8 MIT] | |[https://hallucino.itch.io/px8 NYOP], [https://github.com/Gigoteur/PX8 MIT] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
Line 244: | Line 313: | ||
|- | |- | ||
|[https://github.com/kitao/pyxel Pyxel] by Takashi Kitao | |[https://github.com/kitao/pyxel Pyxel] by Takashi Kitao | ||
+ | |Python | ||
|Python | |Python | ||
|[https://github.com/kitao/pyxel/releases Free], [https://github.com/kitao/pyxel MIT] | |[https://github.com/kitao/pyxel/releases Free], [https://github.com/kitao/pyxel MIT] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
− | |256x256 | + | |256x256, fixed 16-color palette |
− | | | + | |No |
|- | |- | ||
|[https://morgan3d.github.io/quadplay/ quadplay] by Casual Effects | |[https://morgan3d.github.io/quadplay/ quadplay] by Casual Effects | ||
|[https://morgan3d.github.io/quadplay/doc/manual.md.html PyxlScript] | |[https://morgan3d.github.io/quadplay/doc/manual.md.html PyxlScript] | ||
+ | |JavaScript | ||
|[https://morgan3d.github.io/quadplay/ Free], [https://github.com/morgan3d/quadplay/ LGPL3] | |[https://morgan3d.github.io/quadplay/ Free], [https://github.com/morgan3d/quadplay/ LGPL3] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
|384x224 | |384x224 | ||
− | | | + | |No |
|- | |- | ||
|[https://github.com/Lyatus/raccoon Raccoon] by Lutopia & Linheha | |[https://github.com/Lyatus/raccoon Raccoon] by Lutopia & Linheha | ||
|JavaScript | |JavaScript | ||
+ | |? | ||
|[https://raccoon.lucien.cat/ Free], [https://github.com/Lyatus/raccoon Unlicense] | |[https://raccoon.lucien.cat/ Free], [https://github.com/Lyatus/raccoon Unlicense] | ||
|Browser | |Browser | ||
|128x128 | |128x128 | ||
|? | |? | ||
+ | |||
+ | |- | ||
+ | |[https://github.com/kesiev/rewtro Rewtro] by Kesiev | ||
+ | |JSON | ||
+ | |JavaScript | ||
+ | |Free, [https://github.com/kesiev/rewtro MIT] | ||
+ | |Browser | ||
+ | |160x144, 256x192, 320x200; 16 colors | ||
+ | |No | ||
|- | |- | ||
|[https://github.com/incinirate/riko4 Riko4] by Bryan | |[https://github.com/incinirate/riko4 Riko4] by Bryan | ||
|Lua | |Lua | ||
+ | |? | ||
|[https://github.com/incinirate/Riko4/releases Free], [https://github.com/incinirate/riko4 MIT] | |[https://github.com/incinirate/Riko4/releases Free], [https://github.com/incinirate/riko4 MIT] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
Line 277: | Line 359: | ||
|[https://script-8.github.io/ SCRIPT-8] by Gabriel Florit | |[https://script-8.github.io/ SCRIPT-8] by Gabriel Florit | ||
|JavaScript | |JavaScript | ||
+ | |? | ||
|[https://script-8.github.io/ Free], [https://github.com/script-8/script-8.github.io MIT] | |[https://script-8.github.io/ Free], [https://github.com/script-8/script-8.github.io MIT] | ||
|Browser | |Browser | ||
|128x128 | |128x128 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|? | |? | ||
Line 293: | Line 368: | ||
|[https://github.com/pistacchio/tako80 Tako 80] by pistacchio | |[https://github.com/pistacchio/tako80 Tako 80] by pistacchio | ||
|JavaScript | |JavaScript | ||
+ | |? | ||
|Free, [https://github.com/pistacchio/tako80 MIT] | |Free, [https://github.com/pistacchio/tako80 MIT] | ||
|Browser | |Browser | ||
Line 301: | Line 377: | ||
|[https://tic.computer TIC-80] by Vadim Grigoruk | |[https://tic.computer TIC-80] by Vadim Grigoruk | ||
|Lua, MoonScript, JavaScript | |Lua, MoonScript, JavaScript | ||
+ | |C++ | ||
|[https://tic.computer/create Free, $5 (Pro)], [https://github.com/nesbox/TIC-80 MIT] | |[https://tic.computer/create Free, $5 (Pro)], [https://github.com/nesbox/TIC-80 MIT] | ||
|Windows, macOS, Linux, Android | |Windows, macOS, Linux, Android | ||
Line 309: | Line 386: | ||
|[https://melloland.itch.io/vectorboy VectorBoy] by David Jalbert | |[https://melloland.itch.io/vectorboy VectorBoy] by David Jalbert | ||
|Lua | |Lua | ||
+ | |? | ||
|[https://melloland.itch.io/vectorboy NYOP] | |[https://melloland.itch.io/vectorboy NYOP] | ||
|Windows | |Windows | ||
Line 317: | Line 395: | ||
|[https://www.lexaloffle.com/voxatron.php Voxatron] by Lexaloffle | |[https://www.lexaloffle.com/voxatron.php Voxatron] by Lexaloffle | ||
|[https://www.lexaloffle.com/voxatron.php?page=resources micro-scripting] | |[https://www.lexaloffle.com/voxatron.php?page=resources micro-scripting] | ||
+ | |? | ||
|[https://www.lexaloffle.com/voxatron.php $19.99] | |[https://www.lexaloffle.com/voxatron.php $19.99] | ||
|Windows, macOS, Linux | |Windows, macOS, Linux | ||
Line 325: | Line 404: | ||
|[https://github.com/gardrek/VVpet VVpet] by Gardrek | |[https://github.com/gardrek/VVpet VVpet] by Gardrek | ||
|Lua | |Lua | ||
+ | |Löve | ||
|Free, [https://github.com/gardrek/VVpet ?] | |Free, [https://github.com/gardrek/VVpet ?] | ||
− | | | + | |Windows, macOS, Linux |
|64x64x2, 128x128x4, Configurable | |64x64x2, 128x128x4, Configurable | ||
|No | |No | ||
+ | |||
+ | |- | ||
+ | |[https://takezoff.github.io/x8support/#!index.md x8studio] by takezoff | ||
+ | |Lua | ||
+ | |? | ||
+ | |In development | ||
+ | |Android?, iOS? | ||
+ | |128x128, fixed 16-color palette | ||
+ | |? | ||
|- | |- | ||
|[https://github.com/nrkn/yuki-js yuki-js] by Nik Coughlin | |[https://github.com/nrkn/yuki-js yuki-js] by Nik Coughlin | ||
|JavaScript subset | |JavaScript subset | ||
+ | |? | ||
|Free, [https://github.com/nrkn/yuki-js MIT] | |Free, [https://github.com/nrkn/yuki-js MIT] | ||
|Browser | |Browser | ||
Line 341: | Line 431: | ||
|[https://zany80.github.io Zany80] by Noam Preil | |[https://zany80.github.io Zany80] by Noam Preil | ||
|[https://zany80.github.io/documentation/programming/ Z80 ASM, C89] | |[https://zany80.github.io/documentation/programming/ Z80 ASM, C89] | ||
+ | |? | ||
|[https://zany80.github.io/downloads.html Free], [https://github.com/zany80 Apache] | |[https://zany80.github.io/downloads.html Free], [https://github.com/zany80 Apache] | ||
|Windows, Linux, [https://zany80.github.io/native/emscripten/ Browser] | |Windows, Linux, [https://zany80.github.io/native/emscripten/ Browser] | ||
Line 347: | Line 438: | ||
|} | |} | ||
+ | |||
+ | == Links == | ||
+ | * [https://fantasyconsoles.org/wiki Fantasy Consoles Wiki] |
Latest revision as of 11:06, 10 March 2023
A fantasy console is a console that has no physical implementation; it only exists as a virtual machine. Like programming languages, fantasy hardware is sometimes built for entertainment purposes. The idea has recently gained popularity as the retrocomputing movement has gained steam with the resurgence of 80s nostalgia.
For the list below, Memory Mapped means that the console does attempt to map objects to a memory system. This may include memory banks, video RAM, and other memory-based affordances. If the system is not memory mapped, then the physical layout of memory is not a consideration for that console.
To be considered for inclusion into this list, the fantasy console must have some sample demos, even if a full game is not available.
List of Fantasy Consoles
Console Name | FC Language | Build Language | License | Platform(s) | Display | Memory Mapped |
---|---|---|---|---|---|---|
BASIC8 by Tony Wang | BASIC | C++ | $14.99 | Windows, macOS, Linux | 160x128 | ? |
Bitmelo by David Byers | JavaScript | JavaScript | MIT | Windows, Browser | 320x180 | No |
Bitsy by Adam Le Doux | Instructions | JavaScript | Free | Browser | 16x16 1-bit sprites (8x8 per sprite) | ? |
BITY-8 by Alan Morgan | Lua | Rust | GPL v3 | Cargo (Multiplatform) | 192x144 4-bit rewritable palette | Yes |
CHROMA-60 by Arkia | ASM | C | Free | Windows, Linux | 240x135 | ? |
Click4 by Josef Patoprsty | ASM | Löve | Free, MIT | Windows, macOS, Linux | 64x64 | Yes |
CToy by Anaël Seghezzi | C | C | Free, zlib | Windows, macOS, Linux | 128x128 | ? |
DRAK-0 by Drew Wibbenmeyer | ChaiScript, LuaJIT (coming soon) | C++ | NYOP, MIT | Windows | 320x240 | ? |
DX8 by Robin Southern | ASM | C/ASM | Free, MIT | Windows | 320x256 | ?
99 |
ECoS by MLJWare | Lua | Löve | NYOP | Windows, macOS, Linux | 128x128, 1-bit | Yes |
ESP LGE by Igor (corax89) | C-like | C++ | GPL 3.0 | ESPBoy, Browser | 128x128, 16 color palette switchable to any 16-bit (R5G6B5) value | Yes |
Fancade by Martin Magni | Visual Scripting | C | F2P | iOS, Android | Voxel | No |
FAZIC by Michał Kalbarczyk | BASIC | C++ | Free | Browser | 320x240 | ? |
G-eon by Memorix101 | JavaScript | C++ | NYOP | Windows, Linux, Raspberry Pi | 640x480 | No |
Homegirl by poeticAndroid | Lua | D | Free, Pro (NYOP) | Windows, Linux, macOS | 16 different screen modes with a configurable aspect ratio, up to 256 colors from a 12-bit palette per screen | No |
IBNIZ by viznut | C | Instructions | Free, zlib | Windows, Linux | 256x256 | ? |
Leikr by Torbuntu | Groovy, but can use Java, Kotlin, Clojure, or Lua | Java | Free, Apache | Linux, Raspberry Pi 3B/3B+, 3A+, ClockworkPi GameShell, Windows | 240x160 | No |
LIKO-12 by RamiLego4Game | Lua | Löve | NYOP, MIT | Windows, macOS, Linux, Android | 192x128 | No |
LowRes Coder by Timo Kloss | BASIC | ? | $4.99 (F2P) | iOS | Up to 128x128 | ? |
LowRes NX by Timo Kloss | BASIC | ? | Free, LGPL3 | Windows, macOS, iOS | 160x128 | ? |
LuaG Console by Vulcalien | Lua | Java | Free, Apache | Windows, macOS, Linux | 160x160 | No |
MakeCode Arcade by Microsoft | Blocks, JavaScript, TypeScript | ? | Free, MIT | Browser, Raspberry Pi 0, custom handhelds | 160x120 | No |
nano Jammer by Casual Effects | nano | ? | Free, BSD | Browser | 64x64 | ? |
NEKO8 by Egor Dorichev | Lua, BASIC, ASM, MoonScript | ? | NYOP, ? | Windows, macOS, Linux, Android | 192x128 | ? |
Nibble by Felipe Tavares | Lua | ? | Free | Windows, macOS, Linux | 400x240, 8 palettes of 16 colors (from 24-bit values) | Yes |
Octo by John Earnest | ASM | Javascript | MIT | Browser | 64x32, 1-bit (CHIP-8 on Wikipedia) | Yes |
Phosphor by Marc Lepage | Lua | ? | Free, MIT | Browser | 192x128 | No |
PICO-8 by Lexaloffle | Lua | ? | $14.99 | Windows, macOS, Linux, Raspbery Pi | 128x128 | Yes |
Pix64 by ZappedCow | PNG | C# (Monogame) | NYOP | Windows, Linux | 64x64 | ? |
Pixel Vision 8 by Jesse Freeman | Lua | C# | MS-PL (similar to MIT) | Windows, macOS, Linux | 256x240 base, customizable | Yes |
Prism-384 by Grapefruitopia Industries | JavaScript | ? | $5 | Windows, macOS, Linux, Raspberry Pi | 384x216 | Yes |
PuzzleScript, DungeonScript by Stephen Lavelle | Instructions | ? | Free, MIT | Browser | Configurable, Voxel (DungeonScript) | No |
PX8 by hallucino | Lua, Python | ? | NYOP, MIT | Windows, macOS, Linux | Configurable | No |
Pyxel by Takashi Kitao | Python | Python | Free, MIT | Windows, macOS, Linux | 256x256, fixed 16-color palette | No |
quadplay by Casual Effects | PyxlScript | JavaScript | Free, LGPL3 | Windows, macOS, Linux | 384x224 | No |
Raccoon by Lutopia & Linheha | JavaScript | ? | Free, Unlicense | Browser | 128x128 | ? |
Rewtro by Kesiev | JSON | JavaScript | Free, MIT | Browser | 160x144, 256x192, 320x200; 16 colors | No |
Riko4 by Bryan | Lua | ? | Free, MIT | Windows, macOS, Linux | 280x160 | ? |
SCRIPT-8 by Gabriel Florit | JavaScript | ? | Free, MIT | Browser | 128x128 | ? |
Tako 80 by pistacchio | JavaScript | ? | Free, MIT | Browser | 160x144 | ? |
TIC-80 by Vadim Grigoruk | Lua, MoonScript, JavaScript | C++ | Free, $5 (Pro), MIT | Windows, macOS, Linux, Android | 240x136 | Yes |
VectorBoy by David Jalbert | Lua | ? | NYOP | Windows | Vector | No |
Voxatron by Lexaloffle | micro-scripting | ? | $19.99 | Windows, macOS, Linux | Voxel | Yes |
VVpet by Gardrek | Lua | Löve | Free, ? | Windows, macOS, Linux | 64x64x2, 128x128x4, Configurable | No |
x8studio by takezoff | Lua | ? | In development | Android?, iOS? | 128x128, fixed 16-color palette | ? |
yuki-js by Nik Coughlin | JavaScript subset | ? | Free, MIT | Browser | Configurable | Not by default |
Zany80 by Noam Preil | Z80 ASM, C89 | ? | Free, Apache | Windows, Linux, Browser | Serial I/O | ? |