Ja, TIC-80 ist sehr interessant.
Ich habe im Frühjahr 2022 auf der MV der Forth-Gesellschaft einen Vortrag zum Thema gehalten:
https://www.youtube.com/watch?v=sFq6ScmjxRA
____________________________
FORTH UND FANTASY CONSOLES
Carsten Strotmann
____________________________
Fantasy Consoles
================
* Eine "Fantasy Console" ist ein Emulator für einen virtuellen
Computer
* "Fantasy", da keine echte Hardware emuliert wird, sondern ein
"idealisiertes" Computersystem
* "Console", da der Haupteinsatzzweck die Erstellung von Spielen
("ROMS") und die Spiele-Konsolen der 80er und frühen 90er Vorbild
sind
Typische Fantasy Console
========================
* 128x128 Pixel, 16 Farben
* 32K "ROM" Speicher für Programme/Spiele
* 4 Kanal Sound
* Sprites
* Code-Editor
* Sprite-Editor
* Musik/Sound-Editor ("Tracker")
* Map-Editor
Warum "Fantasy Consoles"?
=========================
* Software- (Spiele-) Entwicklung auf modernen Computer ist komplex
* Werkzeuge zur Erstellung von Sound/Musik und Grafik sind schwer zu
erlernen
* Programmierung in C/C++ ist schwer
Einsatz von Fantasy Consoles
============================
* Spiele-Programmierung
* Spiele-Verkauf (itch.io)
* Programmier-"Jams" (zeitbegrenzte Programmier-Wettbewerbe zu einem
Thema)
* Informatik-Unterricht in Schulen und Universitäten
Auswahl an Fantasy Consoles
===========================
<
https://paladin-t.github.io/fantasy/>
PICO-8
~~~~~~
* Kommerziell (14.99 US$)
- Kostenlose Web-Version für Schulen
* Windows/Mac/Linux/RaspberryPi
* Grafik 128x128x16
* 32K ROM
* 4 Kanal Chipsound
* Programmiersprache: Lua
* 256 8x8 Sprites
* Spielfeld: 128x32
* URL: <
https://www.lexaloffle.com/pico-8.php>
<
https://www.lexaloffle.com/media/1/pico ... elease.gif>
TIC-80
~~~~~~
* OpenSource
* Windows/Mac/Linux/RaspberryPi/Android/iOS/Web
* Grafik 240x136x16
* 256K ROM / 272 KB RAM
* 4 Kanal Chipsound
* Programmiersprache: Lua, Moonscript, Javascript, Ruby, Wren, Fennel,
Squirrel
* 256 Forground/256 Backgound 8x8 Sprites
* Spielfeld: 240x136
* URL: <
https://tic80.com>
<
https://raw.githubusercontent.com/wiki/ ... onsole.gif>
Lambda 8
~~~~~~~~
* OpenSource
* Linux/RaspberryPi
* Grafik 256x128x6
* RAM: beliebig
* Sound: -
* Programmiersprache: Scheme (s7)
<
https://ccrma.stanford.edu/software/snd/snd/s7.html>
* Sprites: -
* Spielfeld: -
* URL: <
https://github.com/raydeejay/retro-40>
Retro-40
~~~~~~~~
* OpenSource
* Linux/RaspberryPi
* Grafik 240x192x16
* RAM: beliebig
* Sound: -
* Programmiersprache: Forth (FICL)
* Sprites: -
* Spielfeld: -
* URL: <
https://github.com/raydeejay/retro-40>
UXN/Varvara
~~~~~~~~~~~
* OpenSource
* Linux/RaspberryPi/Windows/MacOS/NintendoDS
* Grafik: 2bit (4 Farben), Grösse beliebig
* RAM: 64KB
* Sound: Mono/Midi
* Programmiersprache: UXN (Forth-inspiriert)
* Sprites: -
* Spielfeld: -
* URL: <
https://100r.co/site/uxn.html>
<
https://nchrs.xyz/site/uxn_notes.html>
<
https://100r.co/media/content/projects/uxn_linux.jpg>
CHIP-8
~~~~~~
CHIP-8 wurde 1977 von Joe Weisbecker für den COSMAC VIP microcomputer
implementiert und auf viele andere Systeme portiert.
<
https://en.wikipedia.org/wiki/CHIP-8>
* OpenSource
* viele
* Grafik: 64x32 1bit (2 Farben)
* RAM: 4KB
* Sound: beep
* Programmiersprache: CHIP-8 Assembler
* Sprites: 8x(1-15)
* Spielfeld: -
* URL: <
https://johnearnest.github.io/chip8Archive/>
<
https://johnearnest.github.io/chip8Arch ... p/jump.gif>
Homework
========
* Ein "echtes" Forth für UXN
* Retro-40 ausbauen
* Ein Forth für PICO-8/TIC-80 (in Lua?)
* Forth als weitere Sprache in TIC-80 einbauen
* Ein Forth für CHIP-8