====== [hemmerling] FORTH 2/7 - Hardware, Commercial Products & Services, Intellectual Property ( IP ) ====== Related pages: *[[dsl.html|Textual and Graphical Modeling by Domain Specific Languages]]. *[[distributed.html|Distributed Computing & Parallel Computing]]. *[[embedded.html|Embedded Systems]]. *[[forth.html|FORTH 1/7]]. *[[forth03.html|FORTH 3/7]]. *[[forth04.html|FORTH 4/7]]. *[[forth05.html|FORTH 5/7]]. *[[forth06.html|FORTH 6/7]]. *[[forth07.html|FORTH 7/7 - H2oForth]]. *[[vmachine.html|Virtual Machines, P-Code & Byte-Code Interpreters]]. *[[wasm.html|WebAssembly ( WASM )]]. ===== Hardware for FORTH Systems ===== ==== Standard Hardware suitable for FORTH Systems and FORTH Systems for Standard Hardware ==== === FORTH Systems for Standard Hardware === *See [[forth04.html|FORTH 4/5]]. === Standard Hardware suitable for FORTH Systems ( any PC with standard OS, any Eval-Boards & Embedded Boards with its CPUs, MPUs ) === *See [[topics.html|Topics|]]. ==== Special FORTH-enabled Hardware, commercial Hardware Products with FORTH ==== === AIM-65 === == Hardware Platform == *[[http://en.wikipedia.org/wiki/AIM-65|EN.Wikipedia "AIM-65"]], [[http://de.wikipedia.org/wiki/AIM-65|DE.Wikipedia "AIM-65"]] - "The Rockwell AIM-65 computer was a development computer introduced in 1978 based on the MOS Technology 6502 microprocessor. The AIM-65 was essentially an expanded KIM-1 computer. Available software included a line-oriented machine code monitor, BASIC interpreter, assembler, Pascal, PL/65, and **FORTH** development system". == Character Set == *The original computer just allow to enter capital, upper case letters ( "A", "B",.. ) only, they don´t allow to enter non-capital, lower case letters ( "a", "b",..) :-(. *Non-capital, lower case letters cause no input, with the MAME emulator :-(. == AIM-65 Emulators "MAME ( Multiple Arcade Machine Emulator )" & "MESS" == *See "BBC Micro Emulators 'MAME ( Multiple Arcade Machine Emulator )' & 'MESS'". *See "Hector Emulators 'MAME ( Multiple Arcade Machine Emulator )' & 'MESS'". == AIM-65 Keyboard Mapping with MAME on Windows PC == ^ ^ ^ ^ ^ ^ German Windows Keyboard ^ AIM-65 Key Action ^^ Comment ^ ^ ::: ^ MAME, Natural Keyboard ^ MAME, Emulated Keyboard ( QUERTY ) ^ ^ ^ "SHIFT-1" | "!" | "!" | | ^ "SHIFT-2" | "%%"%%" | "%%"%%" | | ^ "SHIFT-3" | No input | "#" | | ^ "SHIFT-4" | "$" | "$" | | ^ "SHIFT-5" | "%%%%%" | "%%%%%" | | ^ "SHIFT-6" | "&" | "&" | | ^ "SHIFT-7" | "/" | "'" | | ^ "SHIFT-8" | "(" | "(" | | ^ "SHIFT-9" | ")" | ")" | | ^ "SHIFT-0" | "=" | "0" | | ^ "ß" | No input | ":" | | ^ "?" | "?" | "*" | | ^ "´" | No input | "%%^%%" | | ^ "`" | No input | "%%^%%" | | ^ "Z" | "Z" | "Y" | | ^ "Ü" | No input | "=" | | ^ "ü" | "U" | "-" | | ^ "+" | "+" | "]" | | ^ "*" | "*" | "]" | | ^ "Ö" | No input | "+" | | ^ "ö" | "o" | ";" | | ^ "Ä" | No input | "@" | | ^ "ä" | "a" | No input, but linefeed ( LF, 0x0A ) on the screen | | ^ "#" | "#" | "[" | | ^ "'" | "'" | "[" | | ^ "<" | "<" | No input | | ^ ">" | ">" | No input | | ^ "Y" | "Y" | "Z" | | ^ "," | "," | "," | | ^ ";" | ";" | "<" | | ^ "." | "." | "." | | ^ ":" | ":" | ">" | | ^ "-" | "-" | "/" | | ^ "_" | No input | "?" | | ^ | | | | ^ TAB | | | Not available for input, used by MAME UI | ^ ScrollLock | | | Not available for input, used by MAME UI | ^ "%%^%%" | | | Not available for input, used by MAME UI | ^ "°" | | | Not available for input, used by MAME UI | ^ | | | | == FORTH ROMs == *[[http://www.emurom.net/de/emulation/mame-roms.html|Emurom.net "MAME ROMs"]] - "Rom name" => Enter "aim 65". -"AIM 65". -"AIM-65-40". *[[http://www.wowroms.com/en/roms/mame/aim-65/77177.html|WoWroMs "AIM 65 - MAME (MAME) rom download"]]. *[[http://retro.hansotten.nl/6502-sbc/aim-65/aim-65-manuals-and-software/|Retro Computing. About small SBC systems "AIM 65 Manuals and software"]]. *"First Forth ROM V1.3 AIM 65-050". *"Second Forth ROM AIM 65-050". *"Math Package A65-040 D000, floating point words". *[[http://www.archive.org/details/MAME_0.232_ROMs_Merged|Archive.org "MAME 0.232 ROMs (Merged Versions)"]]. *[[http://ia904506.us.archive.org/view_archive.php?archive=/9/items/MAME_0.232_ROMs_Merged/MAME_0.232_ROMs_Merged.zip|Archive.org "MAME 0.232 ROMs" - List of single ZIP files]]. -"aim65.zip". -"aim65_40.zip". *[[http://archive.org/details/MAME_0.202_Software_List_ROMs_merged|Archive.org "MAME 0.202 Software List ROMs (merged)"]]. *"aim65_cart.zip". -"assemblr.zip". -"basic11.zip". -"extbsa21.zip". -"forth13.zip" => "forth v1.3.z25", "forth v1.3.z26", "mathpack / "mathpack.z24". Copy the files into a single directory "roms/forth13". I.e. don't copy the files in the "roms/aim65" directory! -"pascal10.zip". -"pl65.zip". *[[http://mame.spludlow.co.uk/?Search=aim65|Spludlow MAME - Machine Search "aim65" ( Search=aim65 )]]. *[[http://mame.spludlow.co.uk/SoftwareLists.aspx?Page=17|Spludlow MAME - Software Lists]]. *[[http://mame.spludlow.co.uk/SoftwareListGroups.aspx|Spludlow MAME - Software List Groups]] - "aim65_cart" - "Rockwell AIM 65 cartridges", "ROM: 8". *[[http://mame.spludlow.co.uk/SoftwareLists.aspx?List=aim65_cart|Spludlow MAME - Software Lists "aim65_cart" ( List=aim65_cart )]]. *[[http://mame.spludlow.co.uk/Machine.aspx?name=aim65|Spludlow MAME - Software Lists "AIM 65" ( name=aim65 )]]. *[[http://mame.spludlow.co.uk/SoftwareLists.aspx?List=aim|Spludlow MAME - Software Lists "AIM 65" ( List=aim )]]. *Package name "forth13" - [[http://mame.spludlow.co.uk/Software.aspx?list=aim65_cart&soft=forth13|Spludlow MAME - Software Lists "AIM 65 FORTH v1.3"]]. *Package name "mathpack" - [[http://mame.spludlow.co.uk/Software.aspx?list=aim65_cart&soft=mathpack|Spludlow MAME - Software Lists "AIM 65 FORTH v1.3 w/ Mathpack"]]. *[[http://adb.arcadeitalia.net/|Arcade Database]] *By unknown search option: *[[http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=aim65|Arcade Database "AIM 65 - MAME machine"]]. *Search for "forth13" => "AIM 65 FORTH v1.3". *[[http://adb.arcadeitalia.net/dettaglio_mess.php?software_name=forth13&software_list=aim65_cart|Arcade Database "AIM 65 FORTH v1.3 - MAME software"]]. *Search for "mathpack" => "AIM 65 FORTH v1.3 w/ Mathpack". *[[http://adb.arcadeitalia.net/dettaglio_mess.php?software_name=mathpack&software_list=aim65_cart|AIM 65 FORTH v1.3 w/ Mathpack - MAME software"]]. == Resources == *[[http://www.google.com/search?q=+mame+software+list+roms|Google - Search for "mame software list roms"]]. *[[http://stardot.org.uk/forums/viewtopic.php?f=4&t=23598|stardot.org.uk. for users of Acorn computers and emulators "MAME 0.236 - AIM65 & FORTH ROM howto ? ( Offtopic )"]]. *Call MAME by command line parameters to load BBC Micro with FORTH ROMs ( by CMD / Powershell batch file, or by Windows desktop icon ). -"mame aim65 forth13". Then press 5 to start FORTH. -"mame aim65 basic11". Then press 5 to start BASIC. -"mame aim65 extbas21". Then press N to start Extended BASIC. -"mame aim65_40" => Error message "THIS MACHINE DOESNT WORK. The emulation for this machine is not yet complete. There is nothing you can do to fix that problem except wait for the developers to improve the emulation". Expert comment "This is the AIM65/40 which is newer than the AIM65 with 40 character LED display, but emulation is not yet working. There's also no known software available for it". *You don't need to unzip any of the romsets. You should have: -"roms/aim65.zip". -"roms/aim65_40.zip". -"roms/bbcb.zip". -"roms/aim65_cart/forth13.zip". -"roms/bbc_rom/forth.zip". *[[http://forum.mamedev.org/|Public MAMEDEV forums]]. *[[http://www.mameworld.info/|MAMEWorld Forums]] - "Do NOT request OR post roms, rom sites, missing files, chd's, rom/chd diffs, or bios's. And don't private message people you don't know asking for them either. It's both illegal & annoying, and won't be tolerated" :-(. === Amethyst, 2019 === == Project == *[[http://www.github.com/74hc595/Amethyst|GitHub "74hc595 / Amethyst"]] - "The Amethyst Colour Video System". "8-bit ATmega1284 retro computer". *[[http://www.github.com/74hc595/Amethyst/tree/master/apps/forth|GitHub "74hc595/Amethyst/tree/master/apps/forth"]]. *[[http://www.twitter.com/txsector/|Twitter "matt sarnoff, @txsector"]]. *[[http://www.twitter.com/txsector/status/1196847727520313345|Twitter, matt sarnoff "A sneak peek of something I’ve been working on bit by bit: the Amethyst"]], 2019-11-19. == Resources == *[[http://www.hackster.io/news/amethyst-is-a-custom-8-bit-computer-built-on-an-atmega1284-microcontroller-58e3c91c0e2a|Hackster.io "Amethyst Is a Custom 8-Bit Computer Built on an ATmega1284 Microcontroller"]]. *[[http://spectrum.ieee.org/build-this-8bit-home-computer-with-just-5-chips|IEEE Spectrum "Build This 8-Bit Home Computer With Just 5 Chips
 Combining old hacks like NTSC artifact colors with modern hardware makes a surprisingly capable machine"]], 2020. *"Compact Computer: The Amethyst is a single-board computer. It uses just six integrated circuits—a CPU, USB interface, and four 7400 chips, which are used to make 215-color video graphics possible. **A built-in Forth virtual machine provides a programming environment**". *"The result was the Amethyst. Just like a classic home computer, it has an integrated keyboard and can generate audio and video. It also has a built-in high-level programming language for users to write their own programs. And it uses just six chips—an ATMEGA1284P CPU, a USB interface, and four simple integrated circuits. The ATMEGA1284P (or 1284P), introduced around 2008, has 128 kilobytes of flash memory for program storage and 16 kB of RAM. It can run at up to 20 megahertz, comes with built-in serial-interface controllers, and has 32 digital input/output pins". *[[http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9055906|IEEE Spectrum "IEEE Explore: Hands-on. 8 Bits, 6 Chips. The AMETHYST home computer is surprisingly capable"]]. *[[http://retrocomputingforum.com/t/matt-sarnoffs-amethyst/1118|Retro Computing Forum "Matt Sarnoff’s Amethyst"]] ( just without "www." ). === AMSAT Space Projects === *[[http://www.amsat-dl.org/en/ips-high-level-programming-of-small-systems-for-the-amsat-space-projects/|AMSAT-DL "IPS – High Level Programming of Small Systems for the AMSAT space projects"]]. *[[http://www.github.com/|GitHub "amsat-dl / IPS"]] - "IPS - High Level Programming of Small Systems for the AMSAT space projects (communication satellites for radio amateurs)". *BYTE article [[http://www.github.com/amsat-dl/IPS/blob/master/Documentation/BYTE_January1979_IPS_An_Unorthodox_High_Level_Language_by_Karl_Meinzer_DJ4ZC.pdf|GitHub "amsat-dl / IPS" - "BYTE, January 1979, Volume 4, Number 1: IPS, An Unorthodox High Level Language"]] ( PDF ). *Free PDF book [[http://www.github.com/amsat-dl/IPS/blob/master/Documentation/IPS%20-%20The%20Book.pdf|GitHub "amsat-dl / IPS" - "Karl Meinzer: IPS – High Level Programming of Small Systems, 2nd. edition, 1978"]] ( PDF ). *[[http://www.pa3fwm.nl/software/ips/|PA3FWM's amateur radio software for Linux/Unix "IPS for Unix/Linux systems"]]. === BBC Micro === == Hardware platform == *[[http://www.youtube.com/watch?v=XXBxV6-zamM|YouTube "Micro Men - 720p (2009)"]], [[http://www.bbc.co.uk/programmes/b00n5b92|BBC4 "Micro Men"]]. *[[http://en.wikipedia.org/wiki/BBC_Micro|EN.Wikipedia "BBC Micro"]], [[http://de.wikipedia.org/wiki/BBC_Micro|DE.Wikipedia "BBC Micro"]]. *[[http://en.wikipedia.org/wiki/Disc_Filing_System|EN.Wikipedia "Disc Filing System"]] ( DFS ). == BBC Micro Emulators == *[[http://www.gametechwiki.com/|Game Tech Wiki]]. *[[http://emulation.gametechwiki.com/|Emulation General Wiki]]. *[[http://emulation.gametechwiki.com/index.php/BBC_Micro_emulators|Emulation General Wiki "BBC Micro emulators"]]. -[[http://www.mkw.me.uk/beebem/index.html|BeebEm - BBC Micro and Master 128 Emulator]] - No Forth option :-(. -[[http://www.github.com/stardot/b-em|GitHub "B-Em"]] - "An opensource BBC Micro emulator for Win32 and Linux" - No Forth option :-(. -[[http://modelb.bbcmicro.com/|model-b, a BBC Micro Emulator for Windows]] - No FORTH option :-(. -[[http://www.xania.org/Emulation|Matt Godbolt’s blog "Emulation"]]. *[[http://bbc.godbolt.org/|JSBeep]] - No FORTH option :-(. -[[http://www.github.com/tom-seddon/b2|GitHub "tom-seddon / b2"]] - No FORTH option :-(. == BBC Micro Emulators "MAME ( Multiple Arcade Machine Emulator )" & "MESS" == *See "Hector Emulators 'MAME ( Multiple Arcade Machine Emulator )' & 'MESS'". *Installation & configuration & operation: *Directory "\roms" - "Place ROM directories here". *So you may and should unpack all 4 "bbc*" ROM zip files into an own directory. Don´t put the files into a flat directory! These 4 directories were created by unpacking: -"roms/bbcb". -"roms/bbcb_de". -"roms/bbcb_us". -"roms/bbcbp". *Any FORTH ROM file should be copied into one of the now existing "BBC Micro" directories. *[[http://www.stardot.org.uk/forums/viewtopic.php?t=18641|stardot.org.uk. for users of Acorn computers and emulators "BBC Model B - MAME BIOS problem"]]. *"For a standard BBC Model B, ‘MOS 1.20” (MOS120) is the firmware that you will find in most machines... The MOS 1.20 ROM goes in the OS socket in a real machine... The machine also needs a valid ‘language’ ROM as well, such as BASIC II (BASIC200). This needs to go in a 'sideways' ROM 'slot'". *"I found the solution by downloading the complete ROM set for MAME 0.217... the files necessary for the emulation of the BBC model B are: (1) **bbcb.zip**, (2) **bbc_acorn8271.zip**, (3) **saa5050.zip**... For those interested, I put them as an attachment, because the MAME archive is 64 GB :) while the BIOS is only a few kilobytes. Please note these files will only work with version 0.217 of MAME ! PS: important to place the BIOS files in the rom directory of MAME & especially NOT to rename them!". *[[http://www.stardot.org.uk/forums/viewtopic.php?t=23288|stardot.org.uk. for users of Acorn computers and emulators "MAME 0.235 - System roms for all Acorn machines"]]. *"system-roms-for-all-acorn-machines_mame-0235.zip". -"forth.zip" => "FORTH-103.rom". This is the original Arconsoft FORTH ROM. -"forth79.zip" => "Forth79-1.0.rom". Third-party ROM. -"forthjwb.zip" => "forthjwb20/ForthJWB-2.0.rom", "forthjwb24/ForthJWB-2.4.rom". Third-party ROMs. -"/bbc_rom/mforth83.zip" => "Multi-FORTH83.com", "mforth83a/Multi-FORTH83a.rom". You must load both into the BBC-Micro directory, you must not create the subdirectory "mforth83a". Third-party ROM "BBC Multi-FORTH83" ( but it is not by "Skywave Software Forth" ?! ). *[[http://stardot.org.uk/forums/viewtopic.php?f=4&t=23574|stardot.org.uk. for users of Acorn computers and emulators "MAME 0.236 - BBC Micro & FORTH ROM howto ?"]]. *Call MAME by command line parameters to load BBC Micro with FORTH ROMs ( by CMD / Powershell batch file, or by Windows desktop icon ). -"mame bbcb -rom2 forth" => BASIC is loaded, you may switch by "*FORTH" to FORTH. -"mame bbcb -rom4 forth" => "Arconsoft FORTH" is loaded. -"mame bbcb -rom4 mforth83" => "Multi-FORTH 83" is loaded. *"UI Manager". *From within a MAME emulation ( i.e. not from the MANE start screen ), you may enable the calling of the "UI Manager" by the keyboard key "Scroll Lock ( "SCR LK", in German "Rollen" ). At some notebook keyboards, it may be called by pressing the additional function key: "FN" + SCR LK". After enabling the "UI Manager", you may call it by pressing the "TAB" key. *By the "UI Manager", you may temporarily load a FORTH ROM, but even if you save the MAME configuration, the FORTH ROM is not loaded. As the Forth ROM is "software" and is not part of the "machine configuration". *"UI Manager / File Manager / romimage2 (rom2)" *If FORTH was loaded by MAME command line parameter: *Either "romimage2 (rom2) forth(rom1)". *Or "romimage4 (rom4) forth(rom1)". *"[software list] => "Arcon BBC Micro ROMs": *"FORTH 1.03" ( forth ). *"FORTH 79" ( forth79 ). *"JWB Forth 2.5" ( forthjwb ). *"JWB Forth 2.0" ( forthjwb20 ). *"JWB Forth 2.4" ( forthjwb24 ). *"G:Forth 2.30" ( gforth ). *"G:Forth 0.95" ( gforth095 ). *Load ROM file by file explorer from the file system, i.e. "FORTH-1.03.rom". *"Scrolling" can´t be stopped on a BBC Micro, by "CTRL-S" or "SCROLL LOCK":-(, as with most PC homecomputers with BASIC. *"On the BBC, **Scroll-lock** is handled by the OS rather than the language. **To turn it on, press ctrl+N**. When it's on, pressing **Shift** will give you the next page-full of text. It can be **turned off with ctrl+O**. At any time (whether scroll lock is on or not), pressing **shift+ctrl will 'freeze' the scrolling** while you keep both keys held down". **"UI Manager / Keyboard Mode" => Keyboard modes are "Emulated" ( Keyboard mapping of the emulated hardware ) or "Natural" ( standard PC keyboard mapping, i.e. QUERZU on German Windows ). *[[http://stardot.org.uk/forums/viewtopic.php?t=11211|stardot.org.uk. for users of Acorn computers and emulators "BBC Emulation Issues in MAME - Q&A"]]. *[[http://www.mdfs.net/System/ROMs/AcornMOS/BBC_120/|mdfs.System.ROMs.AcornMOS.BBC_120]]. == BBC Micro Emulator "BBC Micro Emulator" by "RokCoder" == *The free online emulator [[http://www.rokcoder.com/bbcmicro/|RokCoder "BBC Micro Emulator"]]. *[[http://scratch.mit.edu/discuss/topic/506597/|Scratch Discussions "The Beeb - a full BBC Microcomputer emulator"]]. *"Sideways ROMs are the EPROMS used to expand the BBC Micro. Two examples are BASIC and Disk Filing System which are both included in the emulator. There are many other sideways ROMs ranging from word processors to Logo implementations. The emulator supports sideways ROMs so if there are any that you would particularly like to see in the emulator then let me know and I'll add them!" - As of 2021-10-19, FORTH sideways ROM was included, after I asked for it. *Keyboard Assignment: ^ ^ ^ ^ ^ ^ Key on PC keyboard ^ Windows Keyboard Language ^ Character in RokCoder's BBC Micro Emulation ^ Comment ^ | ^ German | @ ^ Not available :-( ^ | ^ German | [ ^ Not available :-( ^ | ^ German | \ ^ Not available :-( ^ | ^ German | ] ^ Not available :-( ^ | ^ German | { ^ Not available :-( ^ | ^ German | %%|%% ^ Not available :-( ^ | ^ German | } ^ Not available :-( ^ | ^ German | ~ ^ Not available :-( ^ | ^ | ^ ^ == FORTH ROMs == *[[http://www.github.com/bobbimanners/Applecorn/tree/main/ROMs|GitHub "bobbimanners/Applecorn/Applecorn/ROMs/"]] - "Forth_103.rom". *[[http://www.emurom.net/de/emulation/mame-roms.html|Emurom.net "MAME ROMs"]] - "Rom name" => Enter "bbc micro". But just download of -"BBC Micro Model B". Missing files: "saa5050 ( saa5050 )", "dfs090.rom ( bbc_arcorn8271 )", dfs098 ( bbc_arcorn8271 )", "dnfs100.rom ( bbc_arcorn8271 )", "dnfs120.rom ( bbc_arcorn8271 )", "wedfs130.rom ( bbc_arcorn8271 )", "wedfs141.rom ( bbc_arcorn8271 )", "wedfs142.rom ( bbc_arcorn8271 )", "wedfs143.rom ( bbc_arcorn8271 )", "wedfs144.rom ( bbc_arcorn8271 )". -"BBC Micro Model B (German)". Same missing files. -"BBC Micro Model B (US)". Same missing files. -"BBC Micro Model B+ 64K". Missing file: "saa5050 ( saa5050 )". *[[http://web.archive.org/web/*/homepages.paradise.net.nz/mjfoot/bbc.htm|Archive.org "Michael Foot's Home Page - Acorn BBC Computer Emulation Software. Free software for Acorn, Iyonix, A9home and RISC OS compatible computers"]] ( - 2018-11-30 ) - "Download BBC ROMs (39183 bytes)". *[[http://en.wikipedia.org/wiki/Acornsoft|EN.Wikipedia "Acornsoft"]]. *"Acornsoft Languages range:... L13 FORTH – ROM version (BBC 1984)[15]". == BBC Micro Keyboard Mapping with Windows PC == ^ ^ ^ ^ ^ ^ ^ German Windows Keyboard ^ BBC Micro Key Action ^^^ Comment ^ ^ ::: ^ MAME, Natural Keyboard ^ MAME, Emulated Keyboard ( QUERTY ) ^ RokCoder ^ ::: ^ ^ "SHIFT-1" | "!" | "!" | "" | | ^ "SHIFT-2" | "%%"%%" | "%%"%%" | "" | | ^ "SHIFT-3" | No input | "#" | "" | | ^ "SHIFT-4" | "$" | "$" | "" | | ^ "SHIFT-5" | "%%%%%" | "%%%%%" | "" | | ^ "SHIFT-6" | "&" | "&" | "" | | ^ "SHIFT-7" | "/" | "'" | "" | | ^ "SHIFT-8" | "(" | "(" | "" | | ^ "SHIFT-9" | ")" | ")" | "" | | ^ "SHIFT-0" | "=" | "0" | "" | | ^ "ß" | "ss" | "-" | "" | | ^ "?" | "?" | "=" | "" | | ^ "´" | No input | "%%^%%" | "" | | ^ "`" | No input | ":" | "" | | ^ "Z" | "Z" | "Y" | "" | | ^ "Ü" | "u" | "1/4" | | | ^ "ü" | No input | "<" | | | ^ "+" | "+" | ">" | "" | | ^ "*" | "*" | "3/4" | "" | | ^ "Ö" | "o" | "+" | | | ^ "ö" | No input | ";" | | | ^ "Ä" | "a" | "*" | | | ^ "ä" | No input | ":" | | | ^ "#" | "#" | "@" | "" | | ^ "'" | "'" | "@" | "" | | ^ "<" | "<" | "1/2" | | | ^ ">" | ">" | "%%|%%" | | | ^ "Y" | "Y" | "Z" | "" | | ^ "," | "," | ";" | "" | | ^ ";" | ";" | "<" | "" | | ^ "." | "." | ":" | "" | | ^ ":" | ":" | ">" | "" | | ^ "-" | "-" | "/" | "" | | ^ "_" | "_" | "?" | "" | | ^ | | | | | ^ TAB | | | Not available for input, used by MAME UI | ^ ScrollLock | | | Not available for input, used by MAME UI | ^ "%%^%%" | | | | Not available for input, used by MAME UI | ^ "°" | | | | Not available for input, used by MAME UI | ^ | | | | | === Canon Cat === *[[http://archive.org/details/canoncat|Archive.org "Canon Cat"]]. *[[http://www.canoncat.net/|Canon Cat (.net )]]. *[[http://www.canoncat.net/cat/Cat%20Forth%20Inside.txt|Canon Cat (.net ) "Cat Forth Inside.txt"]]. *[[http://www.canoncat.org/|Canon Cat (.org )]]. *[[http://www.canoncat.org/canoncat/forth.html|Canon Cat (.org ) "The Forth inside the Canon Cat"]]. *"words" - Lists the Forth words in a vocabulary. *"see name" - Decompiles the Forth word name. *"re" - Gets you back to the Edde interface. *[[http://www.digibarn.com/collections/systems/canon-cat/|DigiBarn Systems "Canon Cat"]]. *[[http://www.digibarn.com/collections/systems/canon-cat/forthinside.html|DigiBarn Systems "Canon Cat: Enabling Forth (by Dwight Elvey)"]] - "The following is a nifty guide to enabling Forth on your Canon Cat, submitted by Dwight Elvey". *[[http://www.landsnail.com/apple/local/cat/canon.html|Landsnail.com "Canon's Cat Computer: The Real Macintosh"]]. *[[http://www.jagshouse.com/swyft.html|Jag's House "The Canon Cat The Mac's Ancestor"]] - "Canon Swyft Computer Designed by Jef Raskin (originator of the Macintosh idea)". *[[http://www.oldcomputers.net/canon-cat.html|Steve's Old Computer Museum "Canon Cat"]] - "The Macintosh, so-named by Raskin, was to be an inexpensive, text-based, keyboard-controlled system meant for the average "person in the street" (PITS). After Steve Jobs took over the project while still in its infancy, Raskin left Apple to start his own company, Information Appliance, Inc., where he was free to develop his ideas without external influence. Continuing his 'user interface' (UI) concepts, he developed the SWYFT, a protoype system which eventually evolved into the Cat, after Canon bought and financed the development". *[[http://en.wikipedia.org/wiki/Canon_Cat|EN.Wikipedia "Canon Cat"]], [[http://de.wikipedia.org/wiki/Canon_Cat|DE.Wikipedia "Canon Cat"]]. === fignition, 2011-2014 === == Hardware & Software == *[[http://sites.google.com/site/libby8dev/|Libby8dev]]. *[[http://sites.google.com/site/libby8dev/fignition|Libby8dev "fignition"]] - "FIGnition FUZE is the definitive £20 educational DIY computer! It works like an 8-bit home Micro: outputting to composite video and ready to be interactively programmed from the moment you switch it on. FUZE now has bitmapped graphics; sprites, sound and audio saving/loading as well as 8Kb of RAM; 384Kb of storage; an 8-key keypad and runs a variant of FIG-Forth". == Software, including FORTH == *[[http://www.github.com/Snial/FIGnition|GitHub "Snial / FIGnition"]]. *[[http://www.github.com/Snial/FIGnition/wiki|GitHub Wiki "Snial / FIGnition"]]. == Sales == *[[http://de.rs-online.com/web/p/single-board-computer/7755003/|RS Components GmbH "FIGnition Single Board Computer, 8 KB, Atmel AVR 8-Bit, 20MHz"]]. *[[http://www.okdo.com/de/p/fignition-infuze-sbc-kit/|OKdo "FIGnition inFUZE SBC Kit"]]. == Resources == *[[http://www.elektronikpraxis.vogel.de/fignition-infuze-8-bit-platine-fuer-schulungszwecke-a-416239/|ElektronikPraxis "Sinclair-ZX80-Nachfolger. Fignition inFuze – 8-bit-Platine für Schulungszwecke"]]. *[[http://www.electronicsweekly.com/uncategorised/fignition-takes-on-raspberry-pi-in-student-computing-2013-08/|Electronics Weekly "FIGnition takes on Raspberry Pi in student computing"]] - "FIGnition inFUZE is a customised version of the £20 self-assembly 8-bit FIGnition computer developed primarily for educational use as a simple, practical aid to understanding basic computing". *[[http://www.theregister.com/2011/05/10/fignition_forth_pc/|TheRegister "DIY kit computer goes Forth against Braben's RaspberryPi. Are the 80s format wars back?"]]. *[[http://www.wisdomandwonder.com/tag/forth|Wisdom And Wonder "lbForth, Common Lisp, and Forth Emacs fmacs"]]. === Hewlett-Packard Calculators === == Hewlett-Packard Calculators with Reverse Polish Lisp ( RPL ), 1986 - 2015 == *See [[mobilepc.html|Mobile computers, handhelds, organizers, programmable calculators]]. == FORTH ROMs == *[[http://www.jeffcalc.hp41.eu/emu71/forthrom.html|Jeff Calc "The FORTH/Assembler ROM for the HP-71B New: revision B"]]. *[[http://vintagecomputers.sdfeu.org/hp85/roms.htm|Vintage Computers "1980s Vintage Computers"]] ( just without "www." ) - "Hewlett-Packard Series 80 - ROMs and EPROMs" => "FORTH". *[[http://www.hpmuseum.net/display_item.php?hw=1093|HP Computer Museum "71 FORTH/Assembler ROM"]]. === iTV 4OS === *[[http://web.archive.org/web/*/www.itvc.com/Technology/4os.htm|Archive.org "iTVC '4os'"]] ( - 2001-08-06 ) - "4os is the first Operating System written completely in Forth". *[[http://www.forth.org/faq/faq4.txt|Forth Interest Group (FIG) "comp.lang.forth Frequently-Asked Questions, part 4 of 7. A discussion of available Forth Systems: Commercial, Shareware & Freeware"]], 1999-07-23 - "The iTV Corporation has developed 4os, a real-time OS that utilizes the i21 Forth microprocessor. 4os is a complete networked information appliance operating system. The entire system (OS, live Forth system, network, file system, graphic decoders &etc.) requires less than 512Kb of program memory". *[[http://www.github.com/ForthHub/ForthFreak/blob/master/4os|GitHub "ForthHub / ForthFreak / 4os"]] - "4os was a proprietary OS intended to run on a MISC-based set-top box. Developed by iTVC, it was claimed to be the first operating system written completely in Forth. A brief description follows: A complete Internet system (OS, live Forth system, network stack, flash file system, GIF and JPEG decoder, fonts, network support applications, email and browser customer applications) requires less than 1/2 megabyte of program memory. With boot compression (comes standard, takes about 1 second) that system fits in a 128Kbyte ROM. Sadly money and other business aspects conspired and it never got released. ForthSystems". *[[http://groups.google.com/g/comp.lang.forth/c/XCtQPZYEVH8/m/QVVV1iXQf5oJ|Google Groups "comp.lang.forth", Thread "any chance of 4os being open sourced?"]], 2012. *4os. *"iTV has been out of business for decades, and Jeff Fox, who was the head of development there is dead". *"It was written for a Forth chip which, AFAIK, isn't available". *" Worst of all, according to many posts from Jeff over the years, it's extremely bad (large, inefficient) code due to the fact that the leader of that team instructed the programmers to literally translate C code to ANS Forth, which is rarely a good practice". *"They demoed fully functional set top box on SVFIG meeting. So, it *was* operational". *SwiftX. *"SwiftX includes, for its target, a fully native, independent OS suitable for supporting a dedicated application (as opposed to a general-purpose OS to run whatever users want to run on it). It includes all I/O support for the target host (20+ embedded targets), a large library of standard routines, hosted cross-compiler, etc. Networking libraries may include parts of a TCP/IP stack, but we have never had need for a web browser. *Greg Bailey, of Athena Programming. *"The most comprehensive native Forth OS I know is from Greg Bailey, of Athena Programming, who for many years supported a fully native and incredibly fast Forth on PC architecture with full TCP/IP stack (FTP and PPP, no HTML), database management, and other facilities under a monthly maintenance agreement. His systems supported networks of >1,000 users". *[[http://news.ycombinator.com/item?id=12709802|Hacker News "4os – An operating system written completely in Forth"]], 2016. *[[http://www.sametwice.com/jeff_fox|SameTwice "Jeff Fox"]] - "Jeff was the first employee and 'cool software developer' at iTV, a company formed by Chuck Moore to make Internet appliances using one of his Forth chips. Later Jeff was Director of Software at iTV and helped develop 4OS and the email and web browser appliance software. iTV never produced chips in volume or sold any Internet appliances". *Almost the same story, about the same time, just without FORTH: [[http://de.wikipedia.org/wiki/Metabox|DE.Wikipedia "Metabox"]]. === Jupiter Ace === == The original Hardware == *Jupiter Ace *[[http://en.wikipedia.org/wiki/Jupiter_Ace|EN.Wikipedia "Jupiter Ace"]], [[http://de.wikipedia.org/wiki/Jupiter_Ace|DE.Wikipedia "Jupiter Ace"]], [[http://jupiter-ace.co.uk/|EN.Wikipedia "Jupiter Cantab"]]. *[[http://www.academickids.com/encyclopedia/index.php/Jupiter_ACE|AcademicKids "Jupiter ACE"]], [[http://www.academickids.com/encyclopedia/index.php/Jupiter_Cantab|AcademicKids "Jupiter Cantab"]]. *[[http://wiki2.org/en/Jupiter_Ace|Wiki 2. Wikipedia Republished "Jupiter Ace"]]. *[[http://jupiter-ace.co.uk/|Jupiter ACE Archive - The archive for the 1982 8-bit FORTH computer]]. *[[http://www.twitter.com/JA_Archive|Twitter "JupiterACE Archive"]]. *[[http://k1.spdns.de/Vintage/|black-ice ( k1.spdns.de )]]. *[[http://k1.spdns.de/Vintage/Sinclair/|black-ice ( k1.spdns.de ) "Kio's Sinclair ZX Computers Archive"]]. *[[http://k1.spdns.de/Vintage/Sinclair/80/|black-ice ( k1.spdns.de ) "/Vintage/Sinclair/80/"]] - "The Black & white Era: ZX80, ZX81, Clones and Jupiter ACE". *[[http://k1.spdns.de/Vintage/Sinclair/80/Jupiter%20Ace/|black-ice ( k1.spdns.de ) "/Vintage/Sinclair/80/Jupiter Ace/"]]. *[[http://k1.spdns.de/Vintage/Sinclair/80/Jupiter%20Ace/Jupiter%20Ace%20FAQ%2011%2797%20%5BPaul%20Robson%5D.html|black-ice ( k1.spdns.de ) "The Jupiter ACE FAQ. Last updated on 3rd November 1997"]] - "The FORTH was quite powerful and fast, and had a then unique ability to edit Forth definitions in the dictionary on the fly, rather than using 'Screens' as most Forths of that era did". *[[http://web.archive.org/web/*/http://www.arrgh.co.uk/hardware/ace/index.html|arrgh - the anally retentives retro games home "jupiter ace"]] ( - 2000-08-18 ). *[[http://web.archive.org/web/*/http://users.aol.com/autismuk/ace/|Archive.org "Paul Robson: ACE 32. The Jupiter ACE Emulator for MSDOS"]] ( - 2008-05-14 ). *[[http://web.archive.org/web/*/http://users.aol.com/autismuk/ace/software.htm|Archive.org "Paul Robson: The Jupiter Ace Software Library"]] ( - 2008-03-24 ). *Resources: *[[http://www.coek.info/pdf-using-forth-to-control-a-robot-arm-.html|Kundoc "Using FORTH to control a robot arm"]] ( Online PDF ), 1983. *"Using FORTH to control a robot arm The cost of a small robot arm can be low enough for one to be treated as a computer peripheral. FORTH is fast enough and compact enough to control a robot arm through one of today's 'home' computers, as **David Sands** outlines". *"Jupiter Ace". *"The robotextended FORTH is called ROBOFORTH". == Minstrel 4th == *[[http://www.thefuturewas8bit.com/minstrel4th.html|TheFutureWas8Bit / TFW8b Retro Computer fan site - "Minstrel 4th - Build your own Ace"]]. *[[http://www.tynemouthsoftware.co.uk/|Tynemouth Software]]. *Blog [[http://blog.tynemouthsoftware.co.uk/|Tynemouth Blog]]. *[[http://hackaday.io/project/165772-recreating-the-jupiter-ace|Hackaday.IO "Recreating the Jupiter Ace"]]. *[[http://www.zx81keyboardadventure.com/2020/05/tut-tut-on-jupiter-ace-part-1.html|ZX81 Keyboard Adventure "TuT-TuT on the Jupiter Ace: Part 1"]]. *[[http://blog.adafruit.com/2020/06/30/the-minstrel-4th-a-new-z80-board-running-forth-tynemouthsw/|Adafruit Blog "The Minstrel 4th – a new Z80 board running Forth @tynemouthsw"]], 2020. *[[http://www.youtube.com/watch?v=MLr33GuFYYA|YouTube "Minstrel 4th(Jupiter Ace clone) Simple DOS in progress"]]. == Jupiter Ace Emulator "ACE 32" == *[[http://www.jupiter-ace.co.uk/ace32.html|Jupiter ACE Archive - The archive for the 1982 8-bit FORTH computer "ACE32 Jupiter Ace Emulator for MS-DOS"]]. *"We have now found a patch for Ace32 to run in Windows without the need for DOSBOX, to stop any confusion between the two versions we have called it version 1.5 Ace32XP (Ace32XP.exe)" => Download offer. *"ACE32XP.EXE" => Win10, 64-bit "This app can´t be run on your PC" :-( *[[http://www.jupiter-ace.co.uk/faq_Ace32_DosBox.html|Jupiter ACE Archive - The archive for the 1982 8-bit FORTH computer "How to install Ace32 emulator with DOSBox"]]. *"One of the features that Ace32 emulator has is the ability to spool an AceFORTH program as a text file to the Ace32 emulator. This allows the Forth programmer to use their favourite text editor to write Forth code". *Free [[http://web.archive.org/web/*/http://users.aol.com/autismuk/ace/|Archive.org "Paul Robson: ACE 32. The Jupiter ACE Emulator for MSDOS"]] ( - 2008-05-14 ). *"ACE32.EXE" => Win10, 64-bit "This app can´t be run on your PC" :-( == Jupiter Ace Emulator "EightyOne" == *[[http://web.archive.org/web/20161222000127/http://www.chuntey.com/|Archive.org "EightyOne - THE Sinclair Emulator"]] ( - 2016-12-26 ). *[[http://eightyone-sinclair-emulator.sourceforge.net/|SourceForge "EightyOne Sinclair Emulator"]], [[http://www.sourceforge.net/projects/eightyone-sinclair-emulator/|SourceForge "EightyOne Sinclair Emulator"]], [[http://eightyone-sinclair-emulator.sourceforge.io/|SourceForge "EightyOne Sinclair Emulator"]] - "Archive of the EightyOne Sinclair emulator written by Michael D Wynne". *"EightyOne v1.23" of 2021-05-19. *"Help / Keyboard Map". ^ ^ ^ ^ ^ Jupiter UK Keyboard ^ EightyOne, ( German ) Windows Keyboard ^ Jupiter Key Action ^ ^ "1" ^ | "0X" | ^ ::: ^ ::: | "00" | ^ "SymbolSHIFT-1" ^ "CTRL-1" | "!" | ^ "SHIFT-1" ^ "SHIFT-1" | DELETE LINE | ^ "2" ^ | "X0" | ^ ::: ^ ::: | "00" | ^ "SymbolSHIFT-2" ^ "CTRL-2" | "@" | ^ "SHIFT-2" ^ "SHIFT-2", "%%"%%" | CAPS LOCK | ^ "3" ^ | "XX" | ^ ::: ^ ::: | "00" | ^ "SymbolSHIFT-3" ^ "CTRL-3", "ä", "Ö" | "#" | ^ "4" ^ | "00" | ^ ::: ^ ::: | "0X" | ^ "SymbolSHIFT-4" ^ "CTRL-4" | "$" | ^ "5" ^ | "0X" | ^ ::: ^ ::: | "0X" | ^ "SymbolSHIFT-5" ^ "CTRL-5" | "%" | ^ "SHIFT-5" ^ "SHIFT-5" | CURSOR_LEFT | ^ "6" ^ | "X0" | ^ ::: ^ ::: | "0X" | ^ "SymbolSHIFT-6" ^ "CTRL-6" | "&" | ^ "SHIFT-6" ^"SHIFT-6" | CURSOR_UP | ^ "7" ^ | "XX" | ^ ::: ^ ::: | "0X" | ^ "SymbolSHIFT-7" ^ "CTRL-7" | "´" | ^ "SHIFT-7" ^ "SHIFT-7" | CURSOR_DOWN | ^ "SymbolSHIFT-8" ^ "CTRL-8" | "(" | ^ "SHIFT-8" ^ "SHIFT-8" | CURSOR_RIGHT | ^ "SymbolSHIFT-9" ^ "CTRL-9"| ")" | ^ "SHIFT-9" ^ "SHIFT-9", ")" | GRAPHICS | ^ "SymbolSHIFT-0" ^ "CTRL-0", "_" | "_" | ^ "SHIFT-0" ^ "SHIFT-0", "BACKSPACE" | DELETE | ^ "SymbolSHIFT-R" ^ "CTRL-R", ";" | "<" | ^ "SymbolSHIFT-T" ^ "CTRL-T", ":" | ">" | ^ "SymbolSHIFT-Y" ^ "CTRL-Y", "ß" | "[" | ^ "SymbolSHIFT-U" ^ "CTRL-U", "´" | "]" | ^ "SymbolSHIFT-I" ^ "CTRL-I" | "Ⓒ" | ^ "SymbolSHIFT-O" ^ "CTRL-O", "ü" | ";" | ^ "SymbolSHIFT-P" ^ "CTRL-P" | """ | ^ "SymbolSHIFT-A" ^ "CTRL-A", "Ä" | "~"| ^ "SymbolSHIFT-S" ^ "CTRL-S", "°" | "%%|%%" | ^ "SymbolSHIFT-D" ^ "CTRL-D", "%%^%%" | "\" | ^ "SymbolSHIFT-F" ^ "CTRL-F", "?" | "{" | ^ "SymbolSHIFT-G" ^ "CTRL-G", "`" | "}" | ^ "SymbolSHIFT-H" ^ "CTRL-H" | "%%^%%" | ^ "SymbolSHIFT-J" ^ "CTRL-J", "-" | "-" | ^ "SymbolSHIFT-K" ^ "CTRL-K", "*" | "+" | ^ "SymbolSHIFT-L" ^ "CTRL-L", "+" | "=" | ^ "SymbolSHIFT-Z" ^ "CTRL-Z", "Ü" | ":" | ^ "SymbolSHIFT-X" ^ "CTRL-X" | "£" | ^ "SymbolSHIFT-C" ^ "CTRL-C", "'" | "?" | ^ "SymbolSHIFT-V" ^ "CTRL-V", "#" | "/" | ^ "SymbolSHIFT-B" ^ "CTRL-B", | "*" | ^ "SymbolSHIFT-N" ^ "CTRL-N", "," | "," | ^ "SymbolSHIFT-M" ^ "CTRL-M", | "." | ^ ^ | | == Jupiter Ace Emulator "NO$ZX" == *[[http://www.problemkaputt.de/zx.htm|Nostalgia Cut "NO$ZX (c) Martin Korth - nocash sinclair ZX emulator/debugger for dos/windows"]]. *The original Windows keyboard key are used for input. So there is no mapping of the Windows keyboard to the Jupiter keymap, i.e. "SHIFT-2" => "%%"%%", not "@". These keys don´t work, or don´t work as expected: ^ ^ ^ ^ ^ NO$ZX, ( German ) Windows Keyboard ^ Jupiter Key Action ^ Comment ^ ^ "SHIFT-3" | "3" | | ^ "%%^%%", "°" | "%%^%% | | ^ "ALT" | GRAPHICS | | ^ "ALTGR" | ")" | | ^ "[", "]", "{", "}", "%%|%%", "~", "´", "`" | | May not be entered by a German keyboard :-(?!? | ^ | | | == Jupiter Ace Emulators, by Edward Patel == *[[http://web.archive.org/web/*/http://hem.passagen.se/tiletech/ace.htm|Archive.org "Edward Patel: jupiter ace emulators"]] ( - 2003-08-13 ) ). -"Win32 executable 'vace10.zip' (Needs MFC shared DLLs)" => Runs properly without any further DLLs :-). -"3D version for Windows 'vace3d.zip'" => Error message "The code execution cannot proceed because MSVCP50.dll was not found". -OpenSource "Jupiter Ace emulator for X" in C language, for X-Window on Linux". == Jupiter Ace Emulator "SpudACE" by Richard Chandler == *[[http://www.jupiter-ace.co.uk/emulators_win.html|Jupiter ACE Archive - The archive for the 1982 8-bit FORTH computer "Emulators"]] ⇒ Download archive, latest version "SpudACE 1.02". *[[http://www.github.com/PhoenixInteractiveNL/emuDownloadCenter/wiki/Emulator-spudace|GitHub "PhoenixInteractiveNL / emuDownloadCenter"]] - "Emulator spudace". Latest, totally outdated version is "SpudACE 0.323". *"Tools / Display Keyboard". *"Tools / Keyboard Helper" - You may type in keys by mouseclicks. *A few additional Windows keyboard keys may be used, in comparison to the "EigthyOne" emulator. ^ ^ ^ ^ ^ Jupiter UK Keyboard ^ SpudACE, ( German ) Windows Keyboard ^ Jupiter Key Action ^ ^ "SHIFT-0" ^ "SHIFT-0", "BACKSPACE", "**DEL**", "**INS**" | DELETE | ^ "SymbolSHIFT-7" ^ "CTRL-7", "**Ö**" | "´" | ^ ^ | | == Some other Jupiter Ace Emulators == *[[http://www.bostjan-grandovec.si/|Bostjan Grandovec - Independant Software Developer "Pantheon"]]. *[[http://www.bostjan-grandovec.si/Content/Jupiter_ACE.htm|Bostjan Grandovec - Independant Software Developer "Pantheon" - "Jupiter ACE"]]. *There are just 92 ready-to-play games :-), no access to the FORTH operating system :-(. *[[http://www.gametechwiki.com/|Game Tech Wiki]]. *[[http://emulation.gametechwiki.com/|Emulation General Wiki ( Emugen ) of Game Tech Wiki]]. *[[http://emulation.gametechwiki.com/index.php/List_of_computers|Emulation General Wiki ( Emugen ) of Game Tech Wiki "List of computers"]]. *[[http://emulation.gametechwiki.com/index.php/Pantheon|Emulation General Wiki ( Emugen ) of Game Tech Wiki "Pantheon"]] - "Pantheon is a closed-source, multi-system emulator for Windows covering many old computers and 1970s–1980s consoles". *The free smartphone app [[http://apps.apple.com/de/app/jupiter-ace/id590389822|Apple App Store "Jupiter ACE"]]. *[[http://web.archive.org/web/*/http://www.geocities.com/TimesSquare/Stadium/4428/|Archive.org "Paul Hodgson: Multi-machine emulator"]] ( - 2003-12-15 ). *[[http://web.archive.org/web/*/http://www.geocities.com/TimesSquare/Stadium/4428/mtmdl.htm|Archive.org "Paul Hodgson: Multi-machine emulator" - "Downloads"]] ( - 2003-08-25 ). *"MTMW130b.ZIP". *"SETUP.EXE" => Win10, 64-bit "This app can´t be run on your PC" :-( *"MTMW131b.ZIP" - Experts told me: Never released, but at least not archived :-(. *OpenSource [[http://www.github.com/chernandezba/zesarux|GitHub "ZEsarUX - ZX Second-Emulator And Released for UniX"]]. *Resources: *[[http://www.jupiter-ace.co.uk/emulators_win.html|Jupiter ACE Archive - The archive for the 1982 8-bit FORTH computer "Emulators"]] ⇒ Download archive of emulator software. *[[http://k1.spdns.de/Vintage/Sinclair/80/|black-ice ( k1.spdns.de ) "/Vintage/Sinclair/80/"]] - "The Black & white Era: ZX80, ZX81, Clones and Jupiter ACE" => Download archive of emulator software, also for Jupiter ACE. *"ace32v14.zip". *"EightyOne v0.42.zip". *[[http://cpcrulez.fr/emulateurs_interview_paul_hodgson.htm|CPCrulez "Interview Paul Hodgson"]] ( without "www." only ). *[[http://web.archive.org/web/*/http://www.worldofspectrum.org/emulators.html|Archive.org "World of Spectrum - Emulators"]] ( - 2019-08-12 ) => Download archive of emulator software, also for Jupiter ACE. *"EightyOne v1.0". == Professional Software Applications == *[[http://www.jupiter-ace.co.uk/index_forth_books.html|Jupiter Ace Resource Site "Forth Book list index"]]. *Jupiter Database. *Jupiter Spreadsheet. *Jupiter Utilities. *Jupiter Assembler / Dis-Assembler. == Literature == *See [[forth06.html|FORTH 6/7]]. === Micronique Hector HRX, Micronique Hector MX - L'ordinateur personnel francais === == Micronique Hector & Interact Family Computer ( both without FORTH ) == *[[http://www.archive.org/details/Interact_Family_Computer_TOSEC_2012_04_23|Archive.org "TOSEC: Interact Family Computer"]]. *[[http://amp.fr.freejournal.org/1160356/1/hector-2hr.html|FreeJournal "Hector 2HR"]] - "Ses capacités daffichage sont de 243x231x4 couleurs texte 40x23". *[[http://www.angelfire.com/mi/ujb/interact.html|The Interact Family Computer]]. *[[http://www.obsolete-tears.com/micronique-hector-i-machine-285.html|Obsolete Tears. Pour les passionnés de jeux vidéo, de retro-gaming et de jeux de société "Micronique Hector I"]]. *[[http://fr.wikipedia.org/wiki/Hector_(Micronique)|FR.Wikipedia "Hector (Micronique)"]]. *[[http://fr.wikipedia.org/wiki/Hector_2HR|FR.Wikipedia "Hector 2HR"]]. *[[http://fr.wikipedia.org/wiki/Hector_2HR%2B|FR.Wikipedia "Hector 2HR+"]]. == Micronique Hector HRX == *[[http://www.old-computers.com/museum/computer.asp?c=142&st=1|Old-Computers On-Line-Museum since 1995 "Micronique Hector HRX"]] - "The HRX is only a 2HR with some more memory (RAM of 64kb) and above all, a new integrated language, the Forth !!". *[[http://www.youtube.com/watch?v=AeDFHKMKAyI|YouTube "Micronique Hector HRX"]] - "FORTH PAMPUK". *[[http://www.youtube.com/watch?v=SEuP4kbmMoY|YouTube "-Ordinateur vintage et jeux, part.2- Hector HRX 1984 par Fredin ZemiX.AVI"]]. *[[http://fr.wikipedia.org/wiki/Hector_HRX|FR.Wikipedia "Hector HRX"]]. *[[http://sr.wikipedia.org/wiki/Micronique_HECTOR_HRX|SR.Wikipedia "Micronique HECTOR HRX"]], Serbia. == Micronique Hector MX == *[[http://www.old-computers.com/museum/computer.asp?c=169&st=1|Old-Computers On-Line-Museum since 1995 "Micronique Hector MX"]] - "It has the same characteristics as the 2HR and the HRX. The 2HR uses Basic, the HRX uses Forth, the MX uses both as available programming languages ! Its 64 KB ROM contains BASIC 3X, HRX Forth, a version of Logo and a machine language editor/assembler". *[[http://www.ordipedia.com/ordinateurs/hector-hrx/|Ordipedia "Hector HRX"]] - "Affichage 243x231 x4 couleurs et texte 40x24". == Hector Emulator "DCHector - Emulateur pour Windows des ordinateurs 8 bits Micronique" == *[[http://dchector.free.fr/|DCHector - Emulateur pour Windows des ordinateurs 8 bits Micronique]]. *[[http://www.facebook.com/daniel.coulom|Facebook "Daniel Coulom"]] - Author? *[[http://dchector.free.fr/mess.html|dchector.free.fr/mess.html]] - "compteur visiteurs depuis le 10 octobre 2005 . Dernière mise à jour le 2 septembre 2020 . (c) 2020 Daniel Coulom". *"Téléchargement" - Download of the emulator software and several Hector ROMs for HRX, MX40, MX 80. No download of the disk drive image "D800K.BIN", which is required to operate MAME & MESS, for all FORTH-enabled computers ( HRX, MX40, MX80 ). *[[http://dchector.free.fr/doc.html|DCHector "Documentation"]]. *"Pour lire ou télécharger la documentation, il faut avoir installé un plugin pour le navigateur. Sans plugin la lecture et le téléchargement sont impossibles. Téléchargement du plugin à Cuminas DjVu plug-in" :-(. *[[http://www.djvu.com/download/|DjVu "DjVu Browser Plug-in"]]. *"Is the primary means of viewing DjVu documents. It runs inside most modern browsers such as Internet Explorer, Firefox and Safari". *As of 2021-10, the latest 64-bit & 32bit version ( 6.1.4 ), is suitable for the operating systems Windows Vista / 7 / 8 / 8.1 and Windows Server 2008 / 2008R2 / 2012, 2012R2. I.e. Windows 10 is not mentioned :-(. *Just the file "10.djvu" is ok ( 63 KBytes ), all other ".djvu" files are corrupt ( just 1 KByte ) :-( *"Options / Keyboard..." - Keyboard mapping Hector keyboard <-> Windows keyboard. *[[http://dchector.free.fr/k7.html|DCHector "Cassettes"]] - Non-FORTH related binary applications. *Configuration: "DCHector Settings": "Computer: [x] Hector 2 HRX", "Speed: [x]200%". == Hector Emulators "MAME ( Multiple Arcade Machine Emulator )" & "MESS" == *[[http://www.mamedev.org/|MAME - The Official Site of the MAME Development Team]]. *[[http://www.github.com/mamedev|GitHub "MAMEdev, @mamedev - MAME Developers"]]. *[[http://mame.sourceforge.net/|SourceForge "MAME"]], [[http://www.sourceforge.net/projects/mame/|SourceForge "MAME"]]. *[[http://www.progettosnaps.net/|MAME progetto-SNAPS]] - "The Home of MAME's Resources". *[[http://cheat.retrogames.com/mess_downloads.htm|RetroGames Cheat "Pugsy's Cheats"]]. *[[http://www.heise.de/download/product/mess-multiple-emulator-super-system-31205|heise Download "MESS (Multiple Emulator Super System)"]] - Download of the latest and last "MESS 0.161" of 2016. *[[http://web.archive.org/web/*/http://www.mess.org/|Archive.org "MESS Wiki"]] ( - 2017-12-17 ). *[[http://www.progettoemma.net/|Emulatore Multiplo di Macchine Arcade ( E.M.M.A. )]] ( - 2020-04-06 ). *[[http://www.progettoemma.net/mess/|Emulatore Multiplo di Macchine Arcade ( E.M.M.A. ) / "ProjectMESS"]] ( - 2021-01-17 ). *[[http://web.archive.org/web/*/http://www.progettoemma.net/mess/extra.html| Extra Files]] ( - 2020-08-05 ). *Installation & configuration & operation: *Directory "\roms" - "Place ROM directories here". So you may and should unpack all ROM zip files into an own directory. Don´t put the files into a flat directory! *Proper directory names: -"roms \ hec2hrx". -"roms \ hec2mx40". -"roms \ hec2mx80" -"roms \ interact". -"roms \ MX80C". -"roms \ Victor". *How to leave a MAME application, running within the MAME emulator? *"Configure Options / Video Options / Windows Mode = ON". By this, you may leave a MAME application screen by clicking on the Windows frame close button at the right top of the Windows window ( "[x]" ). *There is no "UI Cancel button" configuration option :-(, though often claimed in game community forums. *Error messages of MAME and MESS: *"Required ROM/disk images for the selected system are missing or incorrect. Please acquire the correct files or select a different system. **d800k.bin - not found**". *With "MAME 0.236", there is an issue with "Hector HRX + Disc". *While running the ROM application, ESC does not load the ROM start menu again. *With "Hector MX 40c + Disc2" and "Hector MX 80c + Disc2" however, ESC loads the ROM start menu again. *For comparison, "VB Hector" ESC loads the ROM start menu again for all 3 emulations. *[[http://en.wikipedia.org/wiki/Nicola_Salmoria|EN.Wikipedia "Nicola Salmoria"]]. *[[http://en.wikipedia.org/wiki/Multi_Emulator_Super_System|EN.Wikipedia "Multi Emulator Super System"]], [[http://de.wikipedia.org/wiki/MESS|EN.Wikipedia "MESS"]]. *[[http://en.wikipedia.org/wiki/MAME|EN.Wikipedia "MAME"]], [[http://de.wikipedia.org/wiki/MAME|DE.Wikipedia "MAME"]] - "On May 27, 2015, the games console and computer system emulator MESS was integrated with MAME (so the MESS User Manual is still the most important usage instruction for the non-arcade parts of MAME)". == Hector Emulator "VB Hector" == *[[http://hectorvictor.free.fr/index.php?page=8BMh79AVpFsJ|Hector - L'ordinateur personnel francais ( hectorvictor.free.fr ) "VB Hector"]]. *"Télécharger l'émulateur", "Télécharger les disquettes de démonstration de 6502man". *[[http://pasmo.speccy.org/|Pasmo, ensamblador cruzado Z80 portable / portable Z80 cross assembler]] is included :-). *Configuration: "Machine / Hard Reset", "[x] HRX" or [x] MX40" or [x] MX80" or [x] Mini disque" or [x] HectorDuino" ( => "1 FORTH" ). *"Machine / Paramétrage clavier..." - Keyboard mapping "Hector 1" QUERTY keyboard <-> Windows keyboard. == Hector Keyboard Mapping with Windows PC == *Victor Lambda 2, Victor Lambda 2HR => QUERTY keyboard. *Hector 1, Hector 2HR, Hector 2HR+, Hector HRX, Hector MX80 => AZERTY keyboard. *However, the emulator software "VB Hector", "Machine / Paramétrage clavier..." shows a photo of an "Hector 1" with QUERTY keyboard. *[[http://en.wikipedia.org/wiki/AZERTY|EN.Wikipedia "AZERTY"]], [[http://de.wikipedia.org/wiki/AZERTY-Tastaturbelegung|EN.Wikipedia "AZERTY-Tastaturbelegung"]]. ^ ^ ^ ^ ^ ^ ^ ^ German Windows Keyboard ^ Hector Key Action ^^^^ Comment ^ ^ ::: ^ MAME, Natural Keyboard ^ MAME, Emulated Keyboard ( AZERTY ) ^ DCHector ( AZERTY ) ^ VB Hector ( QUERTY )^ ::: ^ ^ "SHIFT-1" | "!" | ">" | ">" | ">" | | ^ "CTRL-1" | | "#" | | | | ^ "SHIFT-2" | "\"" | "%%"%%" | "%%"%%" | "%%"%%" | | ^ "CTRL-2" | | "\" | | | | ^ "SHIFT-3" | No input | "´" | "´" | "´" | | ^ "CTRL-3" | | "[" | | | | ^ "SHIFT-4" | "$" | "$" | "$" | "$" | As expected | ^ "CTRL-4" | | "%%^%%" | | | | ^ "SHIFT-5" | "%%%%%" | "%%%%%" | "%%%%%" | "%%%%%" | As expected | ^ "CTRL-5" | | "]" | | | | ^ "SHIFT-6" | "&" | "!" | "!" | "!" | | ^ "CTRL-6" | | "\" | | | | ^ "SHIFT-7" | "/" | ":" | ":" | ":" | | ^ "CTRL-6" | | "7" | | | | ^ "SHIFT-8" | "(" | "(" | "(" | "(" | As expected | ^ "CTRL-8" | | "[" | | | | ^ "SHIFT-9" | ")" | ")" | ")" | ")" | As expected | ^ "CTRL-9" | | "]" | | | | ^ "SHIFT-0" | "=" | "<" | "<" | "<" | | ^ "CTRL-9" | | "_" | | | | ^ "ß" | "SS" | "-" | "-" | No input | | ^ "?" | "?" | "_" | "_" | No input | | ^ "´" | No input | "+" | "+" | No input | | ^ "`" | No input | "%%^%%" | "%%^%%" | No input | | ^ "Q" | "Q" | "A" | "A" | "Q" | | ^ "W" | "W" | "Z" | "Z" | "W" | | ^ "Z" | "Z" | "Y" | "Y" | "Z" | | ^ "Ü" | "U" ( no Umlaut ) | "?" | No input | No input | | ^ "+" | "+" | "=" | "=" | "=" | | ^ "*" | "*" | "=" | "=" | "=" | | ^ "A" | "A" | "Q" | "Q" | "A" | | ^ "Ö" | "O" ( no Umlaut ) | "M" | "M" | No input | | ^ "Ä" | "A" ( no Umlaut ) | No input | No input | No input | | ^ "#" | "#" | "*" | "*" | "." | | ^ "'" | "'" | "*" | "*" | "&" | | ^ "<" | "<" | No input | No input | No input | | ^ ">" | ">" | No input | No input | No input | | ^ "Y" | "Y" | "W" | "W" | "Y" | | ^ "m" | "M" | "," | "," | "M" | | ^ "M" | "M" | "#" | "#" | "M" | | ^ "," | "," | "." | ";" | "," | | ^ ";" | ";" | "&" | ";" | "#" | | ^ "." | "." | "/" | "." | ";" | | ^ ":" | ":" | "@" | "&" | ";" | | ^ "-" | "-" | ";" | "?" | No input | | ^ "_" | "_" | ";" | "?" | No input | | ^ | | | | | | == Character Set == *The original computers just allow to enter capital, upper case letters ( "A", "B",.. ) only, they don´t allow to enter non-capital, lower case letters ( "a", "b",..) :-(. == Videos == *[[http://www.youtube.com/watch?v=macTed57k8w|YouTube "VIDEO GAMES MEMORIES MICRONIQUE HECTOR HRX 2HR VICTOR LAMBDA COLLECTION COMPILATION OF WWW CRAIGANDE"]]. == ROMs == *[[http://hectorvictor.free.fr/index.php?page=pObq0x.IWb1BF|Hector - L'ordinateur personnel francais ( hectorvictor.free.fr ) "Téléchargements"]] - Download of Hector ROMs + disk drive images, i.e. "D800K.BIN". *[[http://dchector.free.fr/|DCHector - Emulateur pour Windows des ordinateurs 8 bits Micronique]]. *"Téléchargement" - Download of the emulator software and several Hector ROMs for HRX, MX40, MX 80. No download of the disk drive image "D800K.BIN", which is required to operate MAME & MESS, for all FORTH-enabled computers ( HRX, MX40, MX80 ). *[[http://www.emurom.net/de/emulation/mame-roms.html|Emurom.net "MAME ROMs"]] - "Rom name" => Enter "Hector". Download of Hector ROMs for HRX, MX80 ( but not MX40 ) + disk drive images, i.e. "D800K.BIN". *[[http://www.archive.org/details/MAME_0.232_ROMs_Merged|Archive.org "MAME 0.232 ROMs (Merged Versions)"]]. *[[http://ia904506.us.archive.org/view_archive.php?archive=/9/items/MAME_0.232_ROMs_Merged/MAME_0.232_ROMs_Merged.zip|Archive.org "MAME 0.232 ROMs" - List of single ZIP files]]. == Resources == *[[http://www.codecapsule.com/2014/11/22/an-afternoon-in-1983-with-hector/|codeCapsule, Emmanuel Goossaert "An afternoon in 1983 with Hector"]]. *[[http://www.emu-france.com/emulateurs/10-ordinateurs/245-micronique-hector/|Emu-France "Emulation Micronique Hector - Liste des Emulateurs Micronique Hector"]]. *[[http://www.gamebase64.com/forum/viewtopic.php?t=5674|GameBase64 "Micronique Hector Gamebase"]] - "I have used Hector2+ machine for Interact, Hector1 and Hector(2/plus/Basic) and Hector HRX for HRX, HRX-Basic and **HRX-Forth games**. Not all games need the same option to load. For example, for some Hector Basic games you have to press 3, type load and once loading is finished, run. Loading info for each game is at notes tab". *[[http://hectorvictor.free.fr/|Hector - L'ordinateur personnel francais ( hectorvictor.free.fr )]] - Fan page. *Website owner "Yves" ( [[hectorvictor@free.fr?subject=Hector et Victor sont dans un bateau]] ). *"Stéphane Vanlierde" created the website framework, but is not involved in operation. *[[http://www.facebook.com/stephane.vanlierde|Facebook "Stephane Vanlierde"]]? *[[http://hectorvictor.free.fr/index.php?page=xIYw971XYHpfFGT|Hector - L'ordinateur personnel francais ( hectorvictor.free.fr ) "Voici la liste des livres et publications parus pour le Hector"]]. *[[http://www.micronique.fr/|Micronique]]. *[[http://archive.wikiwix.com/cache/index2.php?url=http%3A%2F%2Fsiravo.fabrice.free.fr%2Fmicronique%2Fmicroniq.htm|Wikiwix Archive "Fabrice Siravo 'Micronique'"]] - "HECTOR HRX. Sortie en 1984, ce nouveau micro est en fait un HR+ avec seulement le FORTH en ROM à la place du basic et une mémoire étendue à 64Ko (dont 16Ko de VRAM). Hormis sa mémoire étendue et le forth en ROM, le basic (comme les HR) doit être chargé en RAM" - FORTH was in ROM :-), while BASIC must be loaded by cassette recorder :-(. *[[http://forum.system-cfg.com/viewtopic.php?t=6205|System.cfg le forum. Forum des collectionneurs et utilisateurs d'ordinateurs anciens "FORTH PAMPUK"]], 2015. *[[http://forum.system-cfg.com/viewtopic.php?f=24&t=1639|System.cfg le forum. Forum des collectionneurs et utilisateurs d'ordinateurs anciens "DCHector et le son"]]. *[[http://empichon72.free.fr/bs3/revues/revue_annee.php?revue=tilt&annee=1983&id=tilt_008|TILT. Le Magazine des Jeux Electroniques "n°8 novembre-décembre 1983"]], 1983 - "Hector",... *[[http://fr.wikipedia.org/wiki/Micronique|FR.Wikipedia "Micronique"]]. *[[http://fr.wikipedia.org/wiki/Hector_(micro-ordinateur)|FR.Wikipedia "Hector (micro-ordinateur)"]]. === New Micros, Inc. (NMI) === == Hardware == *[[http://web.archive.org/web/*/http://www.newmicros.com|Archive.org "New Micros, Inc. (NMI)"]] ( - 2018-04-18 ). *[[http://web.archive.org/web/20080614014158/http://forth.newmicros.com/|Archive.org "New Micros, Inc. (NMI) - Max-FORTH IN A NUTSHELL"]] ( - 2008 ). *"Max-FORTH provides a starter set of over 300 words". *"We offer FORTH documentation, FORTH discussion group (moderated by various knowledgeable FORTH experts), and links to FORTH development products". *[[http://web.archive.org/web/*/http://www.newmicros.com/download/downloads.html|Archive.org "New Micros, Inc. (NMI)" - "Manuals, Documents, Appnotes, software, Schematics, Related Links, etc..."]] ( - 2017-02-15 ) *Boards: -NMIN-2107, MCORE CPU. -HCS12, MC9S12A256B CPU. -NMIY-0031 And Peripherals. -NMIY-0031 8051 CPU, Keypad & LCD Interface. -NMIY-0020 F68HC11 based SBC. *[[http://www.camelforth.com/e107_files/downloads/newmicros/|CamelForth "e107_files/downloads/newmicros/"]]. *[[http://www.github.com/bfox9900/MaxForth-68hc11|GitHub "bfox9900 / MaxForth-68hc11"]] - "Library or routines for New Micros 68hc11 board". *Sample code: *[[http://gist.github.com/tianic|GitHub Gist "tianic’s gists"]] - "robotcode4", "FORTH Isomax servo test". *[[http://www.youtube.com/watch?v=SuUweLR9zpU|YouTube "Robot Walk Test"]]. *[[http://www.reddit.com/r/Forth/comments/9sbsvw/new_micros_inc/|Reddit "r/Forth" - "New Micros Inc."]]. *"The board was called ServoPod running IsoMax Forth". == IsoMax FORTH by New Micros Inc. == *[[http://www.github.com/forth2020/zoom-presentations|GitHub "FORTH2020 Zoom Meetings Presentations"]]. *[[http://raw.githubusercontent.com/forth2020/zoom-presentations/main/assets/2022-12-10/isomax-history-dec2022.pdf|Brad Rodriguez "The Life and Times of IsoMax"]] ( PDF ). *[[http://www.youtube.com/watch?v=NVl_349eHrA|YouTube "FORTH 2020 forth programming encounter on ZOOM, celebrating #30 meetings ! 12-2022"]] - "00:00:00​​ Brad Rodriguez 15 'Iso - max Forth history'". *[[http://www.arstechnica.com/civis/threads/convert-forth-to-smallc.393461/|ars OpenForum "Convert Forth to SmallC"]] - "but all I have is the IsoMax code". *[[http://www.camelforth.com/e107_plugins/forum/forum_viewtopic.php?363.last|CamelForth Forum "Unofficial New Micros Support Forum :: IsoPods and IsoMax"]]. *[[http://www.forth.org/whoswho.html|Forth Interest Group "Who's Who"]] - "Randy M. Dumse - 03/11/2011... Past, present and future interests: IsoMax(TM)". *[[http://www.reddit.com/r/Forth/comments/9sbsvw/new_micros_inc/|Reddit "New Micros Inc."]] === Robotic Applications === == Special Effects Camera with robotic-controlled Movements == *Special effects camera with robotic-controlled movements, used for the movies [[http://en.wikipedia.org/wiki/Battle_Beyond_the_Stars|EN.Wikipedia "Battle Beyond the Stars"]], [[http://de.wikipedia.org/wiki/Sador_%E2%80%93_Herrscher_im_Weltraum|DE.Wikipedia "Sador – Herrscher im Weltraum"]] and [[http://en.wikipedia.org/wiki/Jaws_3-D|EN.Wikipedia "Jaws 3-D"]], [[http://de.wikipedia.org/wiki/Der_weiße_Hai_3-D|DE.Wikipedia "Der weiße Hai 3-D"]]. == Robot at TRW Near Field Tst Facility ( NFTF ) == *The TRW Near Field Tst Facility ( NFTF ). *[[http://en.wikipedia.org/wiki/TRW_Inc.|EN.Wikipedia "TRW Inc."]]. *[[http://soton.mpeforth.com/flag/jfar/vol1/no1/article2.pdf|The Journal of Forth Application and Research, Daniel Slater "A State Space Approach to Robotics"]] - "Another robot is used at T R W for measuring radiation patterns of antennas mounted on the next generation of satellites". == Whiskers. The Artificial Intelligence Robot ( by Don Golding ) == *[[http://www.github.com/PeterForth/DonGolding|GitHub "PeterForth/DonGolding"]] - "Whiskers the Robot". Robotics hardware & software was sold in the 1990th by [[http://www.azorobotics.com/|Angelus Research Corp]]. *[[http://drive.google.com/file/d/1teIGoiGB2UgW9RwonBL-7WeoA06e3n2Z/view|Google Drive "Whiskers. The Artificial Intelligence Robot. Technical Manual. Version 1.42. August 6,1997"]]. == Resources == *[[http://soton.mpeforth.com/flag/jfar/vol1/no1/article2.pdf|The Journal of Forth Application and Research, Daniel Slater "A State Space Approach to Robotics"]] ( PDF ). *[[http://www.simulationsraum.de/blog/2012/01/10/use-the-forth-luke/|Simulationsraum "Use the FORTH, Luke!"]], 2012 - "Nachdem ich heute bei Leo Brodie gelesen habe, dass die Spezialeffekt-Kamera für den Science-Fiction-Film 'Sador – Herrscher im Weltraum' (USA 1980, Jimmy T. Murakami) mittels eines FORTH-programmierten Roboters gesteuert wurde, habe ich mich auf die Suche gemacht und gerade einen Artikel in einer (vollständig digital vorliegenden) FORTH-Zeitschrift dazu auf einer FORTH-Webseite gefunden". === Scamp, 2019 === *[[http://www.udamonic.com/|Udamonic]]. *[[http://www.udamonic.com/what-is-a-scamp.html|Udamonic "What is a Scamp?"]]. *[[http://www.hackaday.com/2021/04/25/forth-module-the-size-of-a-stick-of-gum/|Hackaday "Forth Module The Size Of A Stick Of Gum"]], 2021. *[[http://www.hackaday.io/page/9468-scamp-a-forth-based-embedded-computer|Hackaday "Scamp - a Forth-based Embedded Computer"]], 2020. *[[http://www.hackster.io/news/john-catsoulis-pic24-powered-scamp-single-board-computer-brings-flashforth-to-the-breadboard-cdd267044d05|Hackster "John Catsoulis' PIC24-Powered Scamp Single-Board Computer Brings FlashForth to the Breadboard"]], 2019 - "The Udamonic Scamp is a fully-functional, breadboard-friendly SBC running FlashForth, based on a PIC24". *[[http://www.lcmeter.com/sites/default/files/EM300-60_%28SCAMP%29.pdf|1cmeter "SCAMP* Scaled, Compensated, and Multi-Point Flowmeter Signal Conditioner"]] ( PDF ). *[[http://www.tindie.com/products/johncatsoulis/scamp/|Tindie - Buy awesome things directly from makers "Scamp"]]. === ST Robotics' Robots, controlled by ROBOFORTH === *[[http://www.strobotics.com/|ST Robotics]]. *[[http://www.strobotics.com/manuals/manuals.htm|ST Robotics "ST Robotics On-line Manuals"]]. *[[http://www.strobotics.com/manuals/manual17.htm|ST Robotics "ROBOFORTH II v17"]] by **David N Sands**, Cambridge, England. *[[http://www.strobotics.com/roboforth.htm|ST Robotics "ST robotics software suite"]] - "ROBOFORTH is the software that runs in the robot controller. It's a fourth generation language. It uses simple natural language to describe what you want to do". *[[http://www.linkedin.com/company/st-robotics/|LinkedIn "ST Robotics"]]. *[[http://www.facebook.com/ST-Robotics-158707704172861/|Facebook "ST Robotics"]]. *[[http://www.youtube.com/c/strobotics|YouTube "strobotics"]]. *Resources: *[[http://comp.lang.forth.narkive.com/mmvfGQJ6/robot-arm-programmed-in-forth|Narkive News Archive "comp.lang.forth.narkive.com". Topic "Robot arm programmed in Forth"]]. *[[http://www.automation.com/en-us/products/april-2021/st-robotics-new-delta-industrial-robot|Automation.com "ST Robotics Launches New Delta Industrial Robot"]], 2018 - "ST Robotics has built an interface between its RoboForth natural language system and Robot Operating System (ROS)". *[[http://www.cambridgenetwork.co.uk/productsandservices/product/570799|Cambridge Network "Low cost bench top robot arms"]]. *[[http://www.fierceelectronics.com/embedded/robot-operating-system-gets-a-new-interface|FierceElectronics "Robot Operating System Gets A New Interface"]]. *[[http://www.rose-hulman.edu/ME123/Mini-Project-2/Project_2.pdf|ROSE-HULMAN INSTITUTE OF TECHNOLOGY, Department of Mechanical Engineering "Mini-Project #2: Motion Planning and Generation for a Robot Arm"]] ( PDF ). *[[http://de.rs-online.com/web/p/roboterarme/1242691/|RS "St Robotics R17-5 Robotearm, 5-Achsen, 750mm max., bis 2kg, 0.8m/s"]]. *[[http://en.wikipedia.org/wiki/ST_Robotics|EN.Wikipedia "ST Robotics"]]. ==== Special FORTH-enabled Chips ( Processors, CPUs, SOC,... ) ==== === 32-bit CPUs === == INTEL 80x86 == *[[http://users.ece.cmu.edu/~koopman/stack_computers/appa.html|Philip J. Koopman, Jr. "Stack Computers: the new wave" - "Appendix A. A Survey of Computers with Hardware Stack Support"]]. *"The 80x86 processor family, which includes the 8088, 8086, 80186, 80286, and 80386 is a family of microprocessors with a general purpose register architecture. Simple PUSH and POP instructions are supported to manipulate the stack. Many high level language compilers produce code that uses the BP (base pointer) register as a frame pointer to a combined return address and parameter passing stack. When used in this mode, the 80x86 family can be considered to be doing stack processing. In the context of stack computers, the 80x86 is simply included in this listing as a representative example of a conventional machine that can be used as an SS2 architecture". == Motorola / Freescale / NXP - 68K, Coldfire, PowerPC == *[[http://users.ece.cmu.edu/~koopman/stack_computers/appa.html|Philip J. Koopman, Jr. "Stack Computers: the new wave" - "Appendix A. A Survey of Computers with Hardware Stack Support"]]. *"MOTOROLA 680x0. The 680x0 processor family, which includes the 68000, 68010, 68020, and 68030, is a family of microprocessors with a general purpose register architecture. Registers are divided into two groups: address registers and data registers. The address registers support postincremented and predecremented addressing modes. This allows a programmer to use up to eight stacks, one stack per address register. By convention, the A7 register is used as the stack frame pointer for most languages. Of course, the 680x0 family is usually not used as a multiple-stack machine, but nonetheless this capability exists". == ARM Cortex == *? === James Bowman & Richard James Howe === == "J1 Forth CPU" by James Bowman == *[[http://www.latticesemi.com/icestick|Lattice Semiconductor "iCEstick Evaluation Kit"]]. *[[http://www.excamera.com/sphinx/fpga-j1.html|excamera - VHDL, Verilog and FPGA notes "The J1 Forth CPU"]]. *[[http://www.github.com/jamesbowman|GitHub "James Bowman"]]. *[[http://www.github.com/jamesbowman/j1|GitHub "jamesbowman / j1"]] - "The J1 CPU". *[[http://www.youtube.com/results?search_query=j1+forth|YouTube - Search for "j1 forth"]]. *[[http://www.hackaday.com/2018/02/22/forth-system-on-chip-takes-us-back-to-the-80s/|Hackaday "Forth System-On-Chip Takes Us Back To The 80s"]], 2018. == "H2 Forth CPU" by Richard James Howe == *[[http://www.opencores.org/projects/forth-cpu|OpenCores "H2 Forth SoC"]] by Richard Howe. *[[http://www.opencores.org/websvn/filedetails?repname=forth-cpu&path=%2Fforth-cpu%2Ftrunk%2Freadme.md|OpenCores Web Subversion Repositories "Forth computing system"]] by Richard James Howe - "Create a working version of [J1][] processor (called the H2)". *[[http://www.opencores.org/ocsvn/forth-cpu/forth-cpu/trunk/readme.md|OpenCores Subversion Repositories "forth-cpu - Revision 5"]] by Richard James Howe. *[[http://www.github.com/howerj/|GitHub "howerj"]]. *[[http://www.github.com/howerj/forth-cpu|GitHub "howerj / forth-cpu"]] - "A Forth CPU and System on a Chip, based on the J1, written in VHDL". *[[http://www.github.com/howerj/bit-serial|GitHub "howerj / bit-serial"]] - "A bit-serial CPU written in VHDL, with a simulator written in C". *[[http://www.github.com/howerj/bit-serial/blob/master/bit.fth|GitHub "howerj / bit-serial / bit.fth"]] - "Cross Compiler and eForth interpreter for the bit-serial CPU". === E-T-A's FRP1600 === *From the book "FORTH und FORTH-Prozessoren: Programmieren in FORTH 83 - Aufbau und Nutzung von FORTH-Prozessoren", I learned that E-T-A developted the FORTH-RISC Processor FRP1600 in 1992. *[[http://www.e-t-a.de/|E-T-A Elektrotechnische Apparate GmbH]]. *[[http://de.wikipedia.org/wiki/E-T-A|DE.Wikipedia "E-T-A"]]. === Gerhard Hohner === *[[http://www.opencores.org/projects/myforthprocessor|OpenCores "FORTH processor with Java compiler"]] by Gerhard Hohner. No downloads, no infos :-(. === Andrew Holme === *[[http://www.aholme.co.uk/Mk1/Architecture.htm|Andrew Holme "Mark 1 FORTH Computer"]]. *[[http://www.aholme.co.uk/Mk2/Architecture.htm|Andrew Holme "Mark 2 FORTH Computer"]]. === Hans Hübner === *[[http://code.google.com/archive/p/rekonstrukt/|Google Code "rekonstrukt"]]. *"rekonstrukt is a Forth environment running on a CPU core in an FPGA. It provides for a interactive ANS Forth environment running on the target platform". *"rekonstrukt is based on the Maisforth Forth environment written by Albert Nijhof and the System09 6809 compatible VHDL SoC written by John Kent". *"Maisforth Forth" by [[http://home.hccnet.nl/anij/|Albert Nijhof 's Home Page - Forth]] - "the computer language Forth", "die Programmiersprache Forth". *[[http://members.optushome.com.au/jekent/|John Kent]]. *[[http://members.optushome.com.au/jekent/system09/|John Kent "System 09 - VHDL 6809 System On a Chip"]]. === Microchip MARC4 ( formerly: Atmel MARC4, Temic MARC4, Eurosil MARC4 ) === == The MCU == *[[http://pe2bz.philpem.me.uk/|PE2BZ Datasheet Archive]]. *[[http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/|PE2BZ Datasheet Archive "pdf on typenumber"]]. -[[http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/M-N/MARC4.pdf|PE2BZ Datasheet Archive "MARC4"]] ( PDF ) - "Temic: M44C510 Keyboard Application". -[[http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/M-N/MARC4PG.pdf|PE2BZ Datasheet Archive "MARC4PG"]] ( PDF ) - "Temic: MARC4 4-Bit Microcontroller Programmer’s Guide. 1996". *"II. Programming in qFORTH". *"4.7 Short Form Dictionary", page 93/428 ff => Wordlist. *"qFORTH Dictionary", page 107/428 ff. -[[http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/M-N/MARC4SO.pdf|PE2BZ Datasheet Archive "MARC4SO"]] ( PDF ) - "Temic: MARC4 User’s Guide. License Agreement". Not very useful document :-(. -[[http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/M-N/MARC4UG.pdf|PE2BZ Datasheet Archive "MARC4UG"]] ( PDF ) - "Temic: MARC4 4-Bit Microcontroller User’s Guide, 1996". *"qFORTH Compiler". *[[http://www.datasheetarchive.com/qforth-datasheet.html|Datasheet Archive - Search for "qforth"]]. -Page #1. -[[http://www.datasheetarchive.com/pdf/download.php?id=7b95d33e65bd6331e84f1c97d90e6bd941bfe3|Datasheet Archive "Temic: MARC4. 4-Bit Microcontroller, II. Programmer’s Guide"]], 1997. -[[http://www.datasheetarchive.com/pdf/download.php?id=95233283dfc6e76b5f7bdb3e9787ce870873d2|Datasheet Archive "Temic: MARC4 4 Bit Microcontroller Programmer’s Guide, 1994"]], 1994. *"2.15 Book list, 2.1.5.1 Recommended books" refers to books which describe the **FORTH-79** standard, though the worlist of qFORTH contains **some Forth-83 words**, e.g. "NIP", "TUCK",... -[[http://www.datasheetarchive.com/pdf/download.php?id=b5ca6de44a0e4024085551f927f1a2c65f6054|Datasheet Archive "Atmel: MARC4 4-bit Microcontrollers Programmer's Guide"]] #, 2004. *"4.7 Short Form Dictionary", page 86/471 ff => Wordlist. *"4.8 Detailed Description of the qFORTH Language", page 96/471 ff. -[[http://www.datasheetarchive.com/pdf/download.php?id=843bbbdfd365c028f3c0bc24edd2511113d45a|Datasheet Archive "Temic: MARC4 4-Bit Microcontroller Programmer’s Guide. 1996"]]. -[[http://www.datasheetarchive.com/pdf/download.php?id=c8392aa769ec49391ebbd4553fe70f7c3d3c6a|Datasheet Archive "Atmel: MARC4 User’s Guide qFORTH Compiler"]] #, 2001. -[[http://www.datasheetarchive.com/pdf/download.php?id=574a8e03504a5d197673b083abe894164aee4b|Datasheet Archive "Atmel: MARC4 4-bit Microcontrollers Programmer's Guide"]], 2001. -[[http://www.datasheetarchive.com/pdf/download.php?id=13d6217e500be3f34b8431bc3f1f2b790f1d80|Datasheet Archive "Atmel: MARC4 qFORTH Compiler User Guide"]], 2005. -[[http://www.datasheetarchive.com/pdf/download.php?id=5765040a3a37b96db3f5e10d81481ef28fc8dc|Datasheet Archive "Temic: MARC4 Development Tools"]], 1997. -[[http://www.datasheetarchive.com/pdf/download.php?id=43f0e8ea166ac5fa957827017a11e10b2a0155|Datasheet Archive "Temic: MARC4 MCUs for Remote Control and Identification Systems"]], 1997. -[[http://www.datasheetarchive.com/pdf/download.php?id=9b7ecdfaef8f8a0e6ce018d45a4c312d9339ec|Datasheet Archive "Temic: Microcontrollers"]], 1996. -[[http://www.datasheetarchive.com/pdf/download.php?id=c91e2d43a4cf3d449b915349d1bf317ba97b24|Datasheet Archive "Temic: High-Level Programming Language qFORTH"]], 1997. 1 page. Not very useful document :-(. -[[http://www.datasheetarchive.com/pdf/download.php?id=b51d62c55065e9cbfb4069e347119f63c32ea4|Datasheet Archive "Temic: MARC4 4-Bit Microcontroller, User’s Guide. For installation of the MARC4 Software Development System on your PC, please open the directory 'marc4' and select 'install.exe'."]], 1996 -[[http://www.datasheetarchive.com/pdf/download.php?id=535b80f0c5593c34453fd49f1250b8420b82b3|Datasheet Archive "Temic: MARC4 4-Bit Microcontroller User’s Guide 1996"]], 1996. -[[http://www.datasheetarchive.com/pdf/download.php?id=fc346154e61a5ad1604c18b2af23dc45db6c9d|Datasheet Archive "Atmel: ATAR092 UTCM Cookbook"]], 2004 - "This manual describes the various functions of the Universal Timer/Counter Communication Module (UTCM) available on the ATAR092 and ATAR892. Included are cookbook examples of the program code in typical applications to simplify the use of the UTCM. All software examples are written in qFORTH language and can be used at the customers own risk. Atmel cannot guarantee their function in customer software. For further information on these products or qFORTH, please refer to the ATAR092 datasheet, the MARC4 Programmer's Guide and MARC4 User's Guide". -[[http://www.datasheetarchive.com/pdf/download.php?id=dc65b8394149aaf7894452f5e96b0d1a6e8215|Datasheet Archive "Temic: M44C090 UTCM Cookbook"]], 1997 - "This Manual describes the various functions of the Universal Timer/ counter Communication Module (UTCM) available on the M44C090 and M44C890. Included are cookbook examples of the program code in typical applications to simplify the use of the UTCM. All examples are written in qFORTH language. For further information on these products or qFORTH, please refer to the M44C090 data sheet, the MARC4 Programmer’s Guide and MARC4 User’s Guide". -[[http://www.datasheetarchive.com/pdf/download.php?id=18139e961c5e7aa009c0a24d0154445eec6aa8|Datasheet Archive "Atmel: M44C090 UTCM Cookbook"]], 2004 - "This Manual describes the various functions of the Universal Timer/ counter Communication Module (UTCM) available on the M44C090 and M44C890. Included are cookbook examples of the program code in typical applications to simplify the use of the UTCM. All software examples are written in qFORTH language and can be used on the customers own risk. Atmel Wireless & Microcontrollers cannot guarantee their function in customer software.For further information on these products or qFORTH, please refer to the M44C090 data sheet, the MARC4 Programmer’s Guide and MARC4 User’s Guide". -[[http://www.datasheetarchive.com/pdf/download.php?id=855eb388b1ac979fa03eed05ff8ff5c5f8eba0|Datasheet Archive "Atmel: Zero-power Microcontrollers for Low-power and High-temperature Applications"]], 2004. 2 pages. -[[http://www.datasheetarchive.com/pdf/download.php?id=bea3fd32b586fa1a2b51c2acb8ddf15ffa53a7|Datasheet Archive "Temic: M48C260 MARC4 - 4-bit Microcontroller"]], 1995. -[[http://www.datasheetarchive.com/pdf/download.php?id=9f0178c307ec175914e9d9de6e06897912c0a8|Datasheet Archive "Temic: M44C260/M48C260 MARC4 - 4-bit Microcontroller"]], 1996. -[[http://www.datasheetarchive.com/pdf/download.php?id=12d575d37146f050375fade801e6fabbe989a9|Datasheet Archive "Temic: M44C260/M48C260 MARC4 - 4-bit Microcontroller"]], 1998. -[[http://www.datasheetarchive.com/pdf/download.php?id=2ebaf0e2a08195a258fd13c5d2213f443aea77|Datasheet Archive "Temic: Members of the MARC4 Family. M43C505 Low-Current 2- and 5-V Solution for Consumer Applications"]], 1997. 1 page. -Page #2. -[[http://www.datasheetarchive.com/pdf/download.php?id=dc31cb3681c5ba4190755dda37be88ae57f722|Datasheet Archive "Temic: M44C260/M48C260 MARC4 - 4-bit Microcontroller"]], 1996. == Sales == *[[http://www.mouser.de/c/semiconductors/wireless-rf-integrated-circuits/rf-microcontrollers-mcu/?core=MARC4|Mouser "Semiconductors / Wireless & RF Integrated Circuits / RF Microcontrollers - MCU MARC4 Core"]]. == qForth Word Set ( "Atmel: MARC4 4-bit Microcontrollers Programmer's Guide" of 2004, page 86 ff ) == *Control Commands: AGAIN BEGIN DO #DO ?DO LOOP #LOOP +LOOP ?LEAVE -?LEAVE REPEAT UNTIL WHILE CASE ELSE ENDCASE ENDOF EXECUTE IF OF THEN CCR@ CCR! CLR_BCF EI EXIT DI SET_BCF SWI0..SWI7 TOG_BF *Mathematic Commands: ADD + +! INC 1+ 1+! ADDC +C D+ D+! M+ T+! TD+! DAA SUB - DEC 1- 1-! SUBB -C D- D-! M- T-! TD- DAS 2* D2* 2/ D2/ CMP_EQ = 0= D= D0= CMP_GE >= D>= CMP_GT > D> CMP_LE <= D<= CMP_LT < D< CMP_NE <> 0<> D0<> D<> MAX DMAX MIN DMIN NEGATE DNEGATE NOT ROL ROR SHL SHR AND OR XOR TOGGLE D>S S>D *Memory Commands: @ 2@ 3@ X@ [X]@ [+X]@ [X-]@ Y@ [Y]@ [+Y]@ [Y-]@ DTABLE@ ROMBYTE@ ! 2! 3! X! [X] [+X]! [X-]! Y! [Y]! [+Y]! [Y-]! ERASE FILL MOVE MOVE> IN OUT ' *Commands: ! #DO #LOOP +LOOP -?LEAVE RPxxh >SPxxh ?DO ?DUP ?LEAVE @ [+X]! [+X]@ [+Y]! [+Y]@ [X-]! [X-]@ [X]! [X]@ [Y-]! [Y-]@ [Y]! [Y]@ 2! 2= D>= CMP_GT > D> CMP_LE <= D<= CMP_LT < D< CMP_NE <> 0<> D<> D0<> DECR DEPTH DI DMAX DMIN DNEGATE DO DROP DROPR DTABLE@ DTOGGLE DUP EI ELSE ENDCASE ENDOF ERASE EXIT EXECUTE FILL I IF IN INDEX J LOOP M+ M- MAX MIN MOVE MOVE> NEGATE NIP D>S NOP NOT OF OR OUT OVER PICK >R 2>R 3>R R> 2R> 3R> RDEPTH REPEAT RFREE ROL ROLL ROMBYTE@ ROR ROT RP! RP@ S>D SET_BCF SHL SHR SP! SP@ SWAP SWI0..SW17 T+! T-! TD+! TD-! THEN TOG_BF TOGGLE TUCK UNTIL WHILE X! X@ XOR Y! Y@ *STACK Commands: DECR DEPTH DROP 2DROP 3DROP DROPR DUP ?DUP 2DUP 3DUP I INDEX J NIP 2NIP OVER 2OVER PICK R@ 2R@ 3R@ >R 2>R 3>R R> 2R> 3R> RDEPTH RFREE ROT 2ROT == Resources == *[[http://www.embeddedrelated.com/showthread/comp.arch.embedded/18472-1.php|EmbeddedRelated Forum "Thank you Jeff Fox"]], 2004. *[[http://comp.lang.forth.narkive.com/mbyNeR8E/mcu-mimicking-a-spi-flash-slave|Narkive Archive "comp.lang.forth", Thread "MCU mimicking a SPI flash slave"]]. *Axel York Poschmann. *[[http://www.emsec.ruhr-uni-bochum.de/media/crypto/veroeffentlichungen/2010/09/11/4bit_ieeerfid2009.pdf|Ruhr-Universität Bochum, Lehrstuhl für Eingebettete Sicherheit "Markus Vogt, Axel Poschmann, Christof Paar, Horst Gortz: Cryptography is Feasible on 4-Bit Microcontrollers - A Proof of Concept"]] ( PDF ). *Dissertation [[http://www.emsec.ruhr-uni-bochum.de/media/crypto/attachments/files/2010/04/thesis_poschmann.pdf|Ruhr-Universität Bochum, Lehrstuhl für Eingebettete Sicherheit "Axel York Poschmann: LIGHTWEIGHT CRYPTOGRAPHY. Cryptographic Engineering for a Pervasive World"]], 2009. *Dissertation [[http://www.collectionscanada.gc.ca/obj/thesescanada/vol2/OWTU/TC-OWTU-5064.pdf|University of Waterloo "Xinxin Fan: Efficient Cryptographic Algorithms and Protocols for Mobile Ad Hoc Networks"]], 2010. *[[http://en.wikichip.org/|WikiChip - Chips & Semi]]. *[[http://en.wikichip.org/wiki/atmel/marc4|WikiChip - Chips & Semi "MARC4 - Atmel"]] - "Production 1985-2014". *[[http://en.wikichip.org/wiki/4-bit_architecture|WikiChip - Chips & Semi "4-bit architecture"]]. === Charles H. Moore === == His Forth Chips & Boards == *[[http://en.wikipedia.org/wiki/Charles_H._Moore|EN.Wikipedia "Charles H. Moore"]]. *[[http://de.wikipedia.org/wiki/Charles_H._Moore|DE.Wikipedia "Charles H. Moore"]] - "Moore beabsichtigte die Leistungsfähigkeit seines Programmiersystems zu erhöhen, indem er die Forth-Architektur auch als Hardware verwirklichte. Er ist unter anderem Mitgründer von Novix, Inc. und implementierte (1983) den NC4000-Prozessor in einem Gate-Array. Dazu entwickelte und vertrieb er auch Bausätze. Ein Derivat davon wurde an Harris Semiconductor verkauft und als RTX2000 speziell für Weltraumanwendungen vermarktet (1988)". *NC4000. *[[http://en.wikichip.org/wiki/novix/nc4016|EN.Wikichip "NC4016 - Novix"]] - "The NC4016 was capable of executing typical Forth programs as much as 20 times faster than the Motorola 68000". *[[http://news.ycombinator.com/item?id=8860786|Hacker News "The Novix FORTH chip was a pretty cool implementation of FORTH in hardware -- it..."]]. *FORTH experts told me: *"Chuck Moore's NC4000 Novix from 1985 had only 16,000 transistors but outperformed the Intel 80286 that had 134,000 transistors - by a factor of 3". *"It's more complicated than that. The Novix was 16 bit and ran at 8MHz. It could outperform an 80286 clocked at 25MHz - caveat - certain applications only". *[[http://www.computinghistory.org.uk/det/25228/Novix-NC4000-Beta-Board/|Computing History "Novix NC4000 Beta Board"]]. *RTX2000. *[[http://users.ece.cmu.edu/~koopman/stack_computers/sec4_5.html|Philip Koopman "4.5 ARCHITECTURE OF THE HARRIS RTX 2000"]]. *[[http://soton.mpeforth.com/flag/jfar/vol6/no1/article1.pdf|MPEForth "Tom Hand 'The Harris RTX 2000 Microcontroller'"]] (PDF). *[[http://en.wikipedia.org/wiki/RTX2010|EN.WIkipedia "RTX2000"]] - "In 1983, Chuck Moore implemented a processor for his programming language Forth as a gate array. As Forth can be considered a dual stack virtual machine, he made the processor, Novix N4000, as a dual-stack machine". *[[http://techmonitor.ai/technology/forth_has_multi_tasking_multi_user_pfx_operating_system_for_harris_forth_chip|Tech Monitor - Navigating the horizon of business technology​ "Forth has multi-tasking multi-user PF/X operating system for Harris Forth Chip"]], 1989 - "PF/X is ... part of the polyForth program development environment, which also includes integrated editor, interpreter, compiler and debugger". *Ignite / ShBoom / PSC 1000. *[[http://www.cpushack.com/2013/02/21/charles-moore-forth-stack-processors/|The CPUSHACKmuseum "Charles Moore: From FORTH to Stack Processors and Beyond"]], 2013. *[[http://www.cpushack.com/2013/03/02/chuck-moore-part-2-from-space-to-greenarrays/|The CPUSHACKmuseum "Chuck Moore: Part 2: From Space to GreenArrays"]], 2013 - "In 1985 he designed the Sh-boom processor with Russell H. Fish III. This was a 32-bit stack processor, though with 16 general purpose registers, that was again designed with Forth in mind. It was capable of running much faster then the rest of the system so Moore designed a way to run the processor faster then the rest of the board, and still keep things in sync, innovative at them time, and now standard practice. The Sh-Boom was not a particularly wide success and was later licensed by Patriot Scientific through a company called Nanotronics, which Fish had transferred his rights to the Sh-Boom to in 1991. Patriot rebranded and reworked the Sh-Boom as the PSC1000 and targeted it to the Java market. Java byte code could be translated to run in similar fashion as Forth on the PSC1000 and at 100MHz, it was quick. In the early 2000’s Patriot again rebranded the ShBoom and called the design IGNITE". *[[http://en.wikipedia.org/wiki/Ignite_(microprocessor)|EN.Wikipedia "Ignite (microprocessor)"]] - "formerly ShBoom and PSC 1000". *[[http://wiki.c2.com/?ChuckMoore|C2 Wiki "Chuck Moore"]]. *[[http://web.archive.org/web/*/http://www.ptsc.com/|Archive.org "Patriot Scientific Corporation"]] ( - 2020-11-07 ) - "On August 24, 2020, the Company announced that it completed a merger with Mosaic ImmunoEngineering Inc., ("Mosaic")". *[[http://web.archive.org/web/*/http://www.ptsc.com/the-patents.html|Archive.org "Patriot Scientific Corporation: The Patents"]] ( - 2020-02-21 ). *[[http://www.mosaicie.com/|Mosaic ImmunoEngineering Inc.]]. *Sea Forth. *[[http://wiki.c2.com/?ChuckMoore|C2 Wiki "Chuck Moore"]]. *[[http://web.archive.org/web/*/http://www.intellasys.net/|Archive.org "IntellaSys, A TPL Group Enterprise"]] ( - 2014-07-19 ) - "SEAforth 40C18", "VentureForth". "VentureForth is the state of the art multicore programming language". *[[http://web.archive.org/web/*/http://www.intellasys.net/|Archive.org "intellaSys - Programming Languages Blog"]] ( 2015-07-04 - 2016-11-11 ). *[[http://www.intellasys.net/|Intelligent Aids for Daily Living ( intellasys.net )]]. *[[http://wiki.c2.com/?SeaForthArchitecture|c2 Wiki "Sea Forth Architecture"]]. *[[http://www.electronicdesign.com/technologies/microprocessors/article/21759715/multiprocessor-packs-24-cores|Electronic Design "Multiprocessor Packs 24 Cores"]], 2006 - "Programming is via the VentureForth language, a RISC version of the Forth language". ) *[[http://www.eetimes.com/intellasys-tips-embedded-multicore-processor/#|EE Times "IntellaSys tips embedded multicore processor"]], 2006 - "It also includes the so-called VentureForth programming language, which is the native machine code for the SEA Platform chips". *[[http://web.archive.org/web/*/http://falvotech.com/blog/index.php?/categories/9-Forth|Samuel's All-New New News News Page "Forth"]] ( - 2009-01-30 ). *[[http://web.archive.org/web/*/http://www.falvotech.com/blog/index.php?/archives/200-Forth-Day-Report.html|Archive.org "Forth Day Report. Samuel's All-New New News News Page", Article "Forth Day"]], 2007-11-18 - "I feel privileged to have rubbed elbows with the man himself, Charles H. Moore, the inventor of the Forth programming language, and of the Forth architecture microprocessor. But, while Chuck was a human being of intense intellect and absolute humility, the highlight of the day was the hardware. It was a very hardware-focused day, and very nearly all of that hardware was built around the SeaForth 24A chip". *GA4, GA144. *[[http://www.greenarraychips.com/|GreenArrays, Inc.]]. *"Copyright (c) 2012 by GreenArrays, Inc." ( not 2012-2021 ) :-(. *"Latest developments: As of Spring 2021, shipments of the EVB002 evaluation kit and of G144A12 chips continue to be made. The arrayForth 3 integrated development system is in use with no reported problems. Design of a new chip, G144A2x, continues; this will be upward compatible with the G144A12, with significant improvements. Development of Application Notes, including that of a solftware defined GPS receiver, continues". *[[http://www.greenarraychips.com/home/products/index.html|GreenArrays, Inc. "GreenArrays Products"]]. *"NEW! Improved GA144-1.20 Evaluation Kits EVB002... the new 16 MB flash is pre-programmed with **polyFORTH** and, when selected with jumpers, **polyFORTH** comes up ready to communicate with a serial ASCII terminal emulator on USB port B. USB port A may be used to program chip 0 using our **arrayForth 3 IDE**", 2021-06. *[[http://www.greenarraychips.com/home/documents/downindex.html|GreenArrays, Inc. "Index of Downloads"]]. *[[http://news.ycombinator.com/item?id=23148646|Hacker News "Are they? You mean a generation following the GA144?"]], 2020-05. *[[http://www.greenarraychips.com/blog2/2019/05/20/evaluation-board-evb002-released-for-public-sale/|GreenArrays, Inc. "Evaluation Board EVB002 Released for Public Sale"]], 2019-05 - "The first fully supported release of **arrayForth 3** will be posted in the next few days, as soon as the preliminary version of SOFTSIM is ready". *[[http://www.bitlog.it/20141224_getting_started_with_the_ga144_and_arrayforth.html|BitLog "Getting Started With The GA144 And ArrayForth"]], 2014. *[[http://www.reddit.com/r/programming/comments/92520/haypress_creek_supercomputer_360_cores_and_250/|Reddit "Haypress Creek Supercomputer: 360 cores and 250 billion instructions per second. On an 8cm x 8cm board"]], 2010. *[[http://www.greenarraychips.com/home/documents/bee/2009ForthDay.pdf|GreenArrays, Inc. "2009 Forth Day"]] (PDF). *"Build a Haypress Creek like board". *[[http://colorforth.github.io/blog0.htm|GitHub "Colorforth" - "Chuck Moore's Weblog 2009 May, June"]] - "Joe named this board Haypress Creek". *See [[forth06.html|FORTH 6/7]] => Video with Pete Peterson. *Expert feedback: *1.8 Volts technology, not compatible with usual 3.3 & 5.Volts technology components, without special level adapters & interfaces. *No floating point support. *The chip works on Picojoules and the kernels have no clock, so the chip logic runs asynchronously. *Ray-Ban glasses. *[[http://www.madebyteal.com/post/wyoming-companies-take-on-facebook-smart-glasses|Teal Inc. "Wyoming Companies Take on Facebook Smart Glasses"]], 2021. *[[http://www.ray-ban.com/uk/electronics/RW4003%20UNISEX%20RAY-BAN%20STORIES%20|%20ROUND-Blue/8056597557146|Ray-Ban "Capture, share and listen with our first generation of smart glasses"]] - "One of the glasses shown in the GA presentation for $299 and used as example for GA to design a better solution for millions ...". == SchmartBoard == *[[http://www.greenarraychips.com/home/documents/budget.html|GreenArrays "Breadboarding on a Budget"]]. *[[http://www.schmartboard.com/|Schmartboard]]. *[[http://www.schmartboard.com/schmartboard-ez-qfn-88-pins-0-4mm-pitch-2-x-2-grid-bundled-with-a-greenarrays-ga144-ic-202-0048-02/|Schmartboard "Schmartboard|ez QFN, 88 Pins 0.4mm Pitch, 2" x 2" Grid Bundled with a GreenArrays GA144 IC (202-0048-02)"]]. *[[http://www.amazon.com/exec/obidos/ASIN/B00K1J7AR6/hemmerling-21|Amazon.COM "Schmartboard QFN SchmartBoard|ez 88 Pins, 0.4mm Pitch Bundled with a GreenArrays GA144 IC"]]. *[[http://www.sparkfun.com/products/12731|Sparkfun "SparkFun USB to Serial Breakout - FT232RL"]] - Useful addon hardware. *[[http://comp.lang.forth.narkive.com/3CzwgbMR/greenarrays-and-schmartboard-make-the-ga144-chip-accessible-to-experimenters|Narkive Archive "comp.lang.forth", Thread "GreenArrays and SchmartBoard Make the GA144 Chip Accessible to Experimenters"]], 2011. *[[http://www.mikrocontroller.net/topic/233779|mikrocontroller.net "GA144 billiger nutzen"]], 2011 - "Das Teil arbeitet ohne CPU-Clock. Die Cores können angehalten und in extrem kurzer zeit wieder gestartet werden. Sie brauchen nur dann nennenswert Strom, wenn sie auch rechnen. (Weniger als die Hälfte des CPU-Lüfters in einem PC...) Die Register sind 18 Bit breit. Da lässt sich häufig floating Point vermeiden". *[[http://www.atmega32-avr.com/greenarrays-announces-a-new-alliance-with-schmartboard-inc/ |ATMega32-AVR "GreenArrays Announces a New Alliance with SchmartBoard, Inc"]], 2012. *[[http://www.rs-online.com/designspark/hands-on-with-a-144-core-processor|RS Components, DesignSpark, Andrew Back "Hands on with a 144 core processo"]], 2012 *[[http://www.forth.org/svfig/kk/10-2013-Ruffer.pdf|Forth Interest Group "GA144 on a Budget?"]] ( PDF ), 2013. *[[http://www.youtube.com/watch?v=SimvuKNzHNE|YouTube, Jonathan Watmough "First Signs of Life - Schmartboard Green Arrays GA144"]]. === JPB Forth / CoeurFORTH === *[[http://jpb.forth.free.fr/|JPB Forth / CoeurFORTH]], for 16 & 32 bit microcontrollers and FPGA. === MSL16 === *[[http://web.archive.org/web/*/http://www.cse.cuhk.edu.hk/~phwl/mt/public/archives/old/msl16/msl16.html|Archive.org "MSL16 Processor"]] ( - 2014-05-21 ) - The MSL16 machine is a CPU optimised to run the Forth programming language. It is similar to the minimal instruction set computers described in Jeff Fox's Forth microprocessor page , but implemented on a Xilinx FPGA. When the system is stable, the VHDL source code for the CPU and all the code will be released to make a complete public domain CPU. At the moment, we are optimizing the design for speed, and **Brad Eckert** is developing a version of ANS Forth for MSL16". *[[http://www.researchgate.net/publication/3765523_A_FPGA_based_Forth_microprocessor|ResearchGate "Philip Leong: A based Forth microprocessor"]]. *PDF "P.H.W. Leong, P.K. Tsang and T.K. Lee "A based Forth microprocessor". *"XILINX 4000 Series FPGA". === Bernd Paysan === *[[http://www.bernd-paysan.de/|Bernd Paysan]]. *[[http://www.bernd-paysan.de/b16.html|Bernd Paysan "b16 Processor"]] - "The b16 Processor is a minimalistic stack processor, inspired by Chuck Moore's recent work". *[[http://wiki.forth-ev.de/doku.php/projects:b16:start|Forth-eV Wiki "b16-CPU"]]. === John Rible === *[[http://web.archive.org/web/*/http://sandpipers.com/|Archive.org "SandPiper Technology, John Rible"]] ( 2019-08-31 ). *"Guided Exploration of two FPGA-based CPU Designs led by John Rible, SandPiper Technology". === Rockwell R65Fx, R65FRx, R65FKx and F68K === == Forth Based Microcomputers == *8-bit microprocessors R65F11 / R65F12 √. R65FRx ? R65FKx ?. *16-bit microprocessor F68K, based on the 68200. *Datasheets: *[[http://archive.6502.org/datasheets/rockwell_r65frx_r65fkx_rsc_forth_roms.pdf|6502.org: The 6502 Microprocessor Resource "R65FRx and R65FKx. RSC FORTH. Development and Kernel ROMS"]] ( PDF ). *[[http://www.datasheetspdf.com/pdf-file/526298/Rockwell/R65F11/1|Datasheetspdf "Rockwell R65F11 and R65F12 FORTH Based Microcomputers"]] ( PDF ). *[[http://marc.retronik.fr/motorola/68K/68000/MK68200_Single-Chip_Microcomputer_[Mostek_1984_44p].pdf|Retronik "United Technologies Mostek: 68200 16-bit Single-Chip Microcomputers MK68201/MK68E201/MK68211/MK68E211"]] ( PDF ). *RSC FORTH. *See [[forth06.html|FORTH 6/7]]. == Resources == *[[http://www.vcfed.org/forum/|Vintage Computer Forum]]. *[[http://www.vcfed.org/forum/forum/genres/other/10934-rsc-forth-v1-5|Vintage Computer Forum "RSC-FORTH v1.5"]], 2008. *[[http://forum.6502.org/search.php?keywords=forth|6502.org. the 6502 microprocessor resource, Forum - Search for "forth"]]. *[[http://forum.6502.org/viewtopic.php?f=3&t=5226|6502.org. the 6502 microprocessor resource, Forum "RSC FORTH v1.7"]], 2018. *"I found this a while ago. It's an archive of source files for a Rockwell Forth chip that some may we familiar with. I will add other documentation as well here". *"Here are some informational pdfs". *"Rockwell went on to add extra hardware to their 6502 cores to support forth directly. This consisted of a 16-bit register called I, and 10 new instructions to support a direct threaded interpreter. It would be interesting to see the source code of the newer forth interpreter that took advantage of these instructions, although I'd think that the implementation would be quite simple as most of it is implemented in the new instructions". *[[http://soton.mpeforth.com/flag/jfar/vol2/no1/article1.pdf|The Journal of Forth Application and Research "Randy M. Dumse: The R65F11 and F68K Single-Chip Forth Computers"]]. === Klaus Schleisiek === *[[http://www.github.com/microCore-VHDL/|GitHub "Klaus Schleisiek ( microCore-VHDL )"]]. *[[http://github.com/microCore-VHDL/microCore|GitHub "Klaus Schleisiek ( microCore-VHDL ) / microCore"]] - "microCore is a hardware/software co-design environment based on Forth and VHDL". *[[http://github.com/microCore-VHDL/microCore/tree/master/documents|GitHub "Klaus Schleisiek ( microCore-VHDL ) / microCore / documents/"]]. *[[http://www.mikrocontroller.net/topic/512130|mikrocontroller.net "microCore, ein Echtzeitprozessor in VHDL für FPGAs"]], 2021-01. === Silicon Composers, Inc. "SC32 Stack-Chip Microprocessor" === *[[http://web.archive.org/web/*/http://www.inscenes.com/siliconcomposers.shtml|Archive.org "inscenes 'Silicon Composers, Inc.']]. *[[http://web.archive.org/web/*/http://www.inscenes.com/sci/product.htm|Archive.org "inscenes 'Silicon Composers, Inc. Products']]. *[[http://web.archive.org/web/20070220142526/http://www.inscenes.com/sci/sc32.htm|Archive.org "inscenes 'SC32 Stack-Chip Microprocessor']] - "The dual-stack architecture of the SC32 microprocessor is similar to the that found in the Forth language". *[[http://soton.mpeforth.com/flag/jfar/vol5/no4/article4.pdf|The Journal of Forth Application and Research "John Hayses, Susan Lee: The Architecture of the SC32 Forth Engine"]] - "Forth Reduced Instruction Set Computer ( FRISC ) processor architecture". *[[http://www.jhuapl.edu/Content/techdigest/pdf/V10-N03/10-03-Lee.pdf|John Hopkins Applied Physics Laboratory "John Hayses, Susan Lee: Development of a Forth Language directed Processor using very large scale integrated Circuitry"]]. *[[http://users.ece.cmu.edu/~koopman/stack_computers/sec5_2.html|Philip J. Koopman, Jr. "Stack Computers: the new wave" - "5.2 ARCHITECTURE OF THE FRISC 3 (SC32)"]] - " The name "FRISC" stands for "Forth Reduced Instruction Set Computer". === Testra Corporation "Reconfigurable Architecture Computation Engine RACE" === *[[http://www.testra.com/Forth/RACE.htm|Testra Corporation, John R. Hart "Reconfigurable Architecture Computation Engine RACE"]]. *"The design process began by making a software simulation of a very simple Forth processor, called the miniForth. Getting the miniForth up and running was one of the easiest parts of the job, The simulation code for the 27 primitives needed to build the Forth kernel took only a few days to write and debug". *"The RACE is a 16 bit RISC processor that executes code at 25 MIPs. Most Forth primitives take from 4 to 8 cycles, so Forth runs about 4MIPs. Code operators were devised so they could be combined to build efficient Forth primitives, and make best use of the PLD's limited resources. This meant some things were done in unconventional ways. Functions like anding, counting, and shifting, are easily done in one cycle, but arithmetic functions had to be broken into two parts. In the first part the operands are half added using an XOR instruction that takes one cycle. In the second part a special instruction is executed four times to propagate the carry through all 16 bits". *[[http://comp.lang.forth.narkive.com/89qfT2c3/msl16-fpga-forth-processors|Narkive Archive "comp.lang.forth", Thread "MSL16 & FPGA Forth Processors"]], 2009-04-03. *Hugh Aguilar: "There is the MiniForth processor that I wrote the MFX (MiniForth Cross-compiler) for. The MiniForth was not written in VHDL, but was written using proprietary software from Testra for routing on a Lattice 1048isp PLD... They have a website: This page describes their new processor, the RACE, but it appears to be exactly the same as the MiniForth. It may have been upgraded to a bigger and better PLD. An FPGA is a lot more expensive and powerful than a PLD. An FPGA can be programmed in VHDL, which is a very high-level language. Nothing like VHDL exists for PLDs; our software was pretty low-level. The MiniForth was quite inexpensive and was intended to compete against micro-controllers such as the Dallas 80c320, which was the most popular micro-controller of the mid 1990s...". *Hugh Aguilar: "In the MiniForth, there weren't any 'degrees of native Forth' --- it was purely a Forth processor. The mechanism for calling functions was Forth threaded-code. My compiler didn't translate Forth code into machine language for the CPU. Forth code was compiled as threaded code. The primitive functions were written in assembly language. The chip's machine language was designed to support Forth; it was pretty much Forth-83. It could have been made fully Forth-83 or ANS-Forth, but nobody really cares about standards like these, so compliance was never an issue. The machine language was WISC (wide-instruction-set-computer). Each opcode could have as many as five instructions assembled into it. My assembler would rearrange the instructions as necessary to pack them into the opcodes with as few NOP instructions as possible". === Chen-Hansong Ting === *Chen-Hansong Ting - eForth & eP32. *[[http://wiki.forth-ev.de/doku.php/projects:ep32:start|Forth-eV Wiki "EP32 – 32 Bit RISC Processor for FPGA"]]. *[[http://www.yumpu.com/user/forth.org|Yumpu "forth.org"]]. *[[http://www.yumpu.com/en/document/read/10931988/a-microcontroller-for-everyone-forth-interest-group|Yumpu "Chen-Hansong Ting, SVFIG 'A Microcontroller for Everyone'"]] ( PDF ), 2011. *[[http://web.archive.org/web/*/http://www.offete.com/|Archive.org "Offete Enterprises, Dr. Chen-Hanson Ting"]] ( - 2015-09-08 ). *[[http://www.latticesemi.com/en/Products/DevelopmentBoardsAndKits/ObsoleteBoards/LatticeXP2BreviaDevKit|Lattice Semiconductor "LatticeXP2 Brevia Development Kit"]]. *[[http://www.latticesemi.com/latticexp2-brevia|Lattice Semiconductor "LatticeXP2 Brevia2 Development Kit"]]. *[[http://www.digikey.de/catalog/en/partgroup/latticexp2-brevia2-development-kit/46477|DigiKey "LatticeXP2™ Brevia2 Development Kit"]]. *[[http://de.farnell.com/lattice-semiconductor/lfxp2-5e-b2-evn/kit-dev-xp2-brevia2/dp/2253073|Farnell "LFXP2-5E-B2-EVN. Development Kit LatticeXP2 Brevia 2, LatticeMico8™-MCU, interner USB-Controller, JTAG-Programmierung"]]. *Experts told me "John Rible hat auch auf der SVFIG auf Lattice eine CPU vorgestellt, danach hat Dr. Ting damit angefangen". === Zilog SuperZ8 === *[[http://www.zilog.com/docs/ps0146.pdf|Zilog]]. *[[http://www.zilog.com/docs/ps0146.pdf|Zilog "Z88C00. CMOS Super8 ROMless MCU. Product Specification. PS014602-0103"]], 2003 - "Additional instructions support threaded-code languages, such as 'Forth'". *[[http://matthieu.benoit.free.fr/cross/data_sheets/Zilog_components_shortform1989.pdf|Matthieu Benoit "Zilog Components Shortform 1989"]] ( PDF ). *"Super8. MCU ROMless, ROM, and Prototyping Device with EPROM Interface... Additional instructions support threaded-code languages, such as 'Forth'" ( Page 17, PDF page 20 ). *[[http://www.mcforth.net/Frames/mcForth.html|Klaus Kohl-Schöpe, mcForth "Forth - Die Programmiersprache für Microcontroller"]]. *"S8-Forth. Der Zilog Super8 ist eine Variante der Z8-Familie, die um Befehle für Threaded Code erweitert wurden. Die Forth-Gesellschaft e.V. ist gefragt worden, ob wir Interesse an einer Forth-ROM-Version des Super8 haben. Deshalb haben wir eine 8K-Version für das ROM realisiert, die weitestgehend auch dem Forth-83-Standard entspricht". *[[http://en.wikipedia.org/wiki/Zilog|EN.Wikipedia "Zilog"]], [[http://de.wikipedia.org/wiki/Zilog|DE.Wikipedia "Zilog"]]. *[[http://en.wikipedia.org/wiki/Zilog_Z8|EN.Wikipedia "Zilog Z8"]], [[http://de.wikipedia.org/wiki/Zilog_Z8|DE.Wikipedia "Zilog Z8"]]. ==== System On Chips ( SOC ) & FPGAs Manufacturers - Intellectual Property Databases ( 2021-07 ) ==== *See also [[eda03.html|Electronic Design Automation ( EDA ) 3/5 - Design for Application-Specific Integrated Circuits ( ASIC ) - Design of digital Chips]]. *[[http://www.gowinsemi.com/en/support/ip/| GOWIN Semiconductor Corp. "IP and Reference Design"]] - No "forth" Intellectual Property (IP). *[[http://www.intel.com/content/www/us/en/products/programmable/intellectual-property.html|Intel "Intel FPGA IP Portfolio"]]. *[[http://www.intel.com/content/www/us/en/products/programmable/intellectual-property/find-fpga-ip.html|Intel "Find Intel FPGA Intellectual Property (IP) Cores"]] - Search for "forth" => 0 results. *[[http://www.latticesemi.com/en/Products/DesignSoftwareAndIP/IntellectualProperty|Lattice Semiconductor "Lattice Solutions"]] - IP Cores: Search for "forth" => 0 results. *[[http://www.microsemi.com/product-directory/design-resources/5092-ip-cores|Microsemi, a wholly owned subsidiary of Microchip Technology Inc. "FPGA Intellectual Property Cores"]]. *[[http://www.microsemi.com/product-directory/ip-cores/5577-ipcores|Microsemi, a wholly owned subsidiary of Microchip Technology Inc. "IP Cores"]] - Search for "forth" => "There are no matching parts in this category". *[[http://www.microsemi.com/product-directory/design-resources/5092-ip-cores|Microsemi, a wholly owned subsidiary of Microchip Technology Inc. "Enhance Productivity and Reduce Risk with Microsemi IP Cores"]] - "DirectCore IP Cores". Search for "forth" => 0 results. *[[http://www.xilinx.com/products/intellectual-property.html|XILINX "Intellectual Property"]] - "Intellectual Property Keyword Search Results" for "forth" => 0 results. ==== Resources ==== *[[http://www.allaboutcircuits.com/ip-cores/all/P600/|AllAboutCircuits "Category: All IP Cores (1032)"]]. *[[http://www.github.com/ForthHub/ForthFreak/blob/master/ForthCPUs|GitHub "ForthHub / ForthFreak / ForthCPUs"]]. *[[http://www.github.com/mschuldt/forth-chips|GitHub "mschuldt / forth-chips Public"]] - "Forth chips! List of Forth chips by company". *Forth Interest Group (FIG). *[[http://www.forth.org/cores.html|Forth Interest Group (FIG) "Forth CPU Cores"]]. *[[http://www.forth.org/svfig/kk/11-2016-Ting.pdf|Forth Interest Group ( FIG ), Chen-Hanson Ting "Evolution of Forth Chips"]] ( PDF ), 2016. *Jan Gray. *[[http://www.fpgacpu.org/links.html|Jan Gray, FPGA CPU News"]] ( 2000 - 2003 ). *[[http://www.fpgacpu.org/links.html|Jan Gray, FPGA CPU News "FPGA CPU Links"]]. *[[http://www.fpgacpu.org/usenet/forth.html|Jan Gray, FPGA CPU News "Forth Processors"]]. *[[http://web.archive.org/web/*/http://www3.sympatico.ca/jsgray/|Archive.org "Jan Gray - This archived site describes how I used to build custom RISC microprocessors and systems-on-chip in field programmable gate arrays (circa 1996)" ( sympatico.ca )]] ( - 2006-07-01 ). *[[http://web.archive.org/web/20061014151844/http://www3.sympatico.ca/jsgray/homebrew.htm|Jan Gray "Homebrewing RISC Microprocessors In FPGAs"]] ( - 2006-10-14 ). *[[http://comp.lang.forth.narkive.com/89qfT2c3/msl16-fpga-forth-processors|Narkive Archive "comp.lang.forth", Thread "MSL16 & FPGA Forth Processors"]]. *Hugh Aguilar: " Forth isn't really a very good language for these tiny microprocessors because it needs more registers than C does. For example, C will run on a 6808 that has only one stack pointer and one data pointer. It is somewhat awkward because you don't have a stack-frame pointer, and you just have to index off the stack pointer to locate your stack-frame, but it can be done. You can't really get Forth to run on a 6808 though, because Forth needs two stack pointers --- for the parameter stack and the return stack. On the 6808 if you use the data pointer (H:X) as your parameter-stack pointer, you won't have any register left over to use as a data-stack pointer, which you need for @ and !. By comparison, Forth does work well on the 6502 because that microprocessor has two pointers (X and Y) rather than just one. The typical arrangement is to use the X register for the parameter-stack pointer, and the Y register in conjunction with a zero-page pointer for indirect access of memory". *rickman: "I don't understand. You say there weren't degrees of native forth, but your machine had an instruction set just like any other CPU. It did not run Forth. I just had an instruction set that facilitated the implementation of a Forth compiler/interpreter. You say this yourself. If your CPU would power up as a Forth machine with no code being needed, then I would call that a Forth CPU. Anything else is just another CPU. Like mine, no matter how easy it makes writing a Forth compiler/interpreter, you still have to write it!". *[[http://www.opencores.org/|OpenCores]]. *[[http://www.opencores.org/projects|OpenCores "Projects"]]. *[[http://www.opencores.org/projects/up_core_list/summary|OpenCores "An inventory of soft processor cores"]] - "Small soft core uP Inventory" ( PDF ). *[[http://www.google.com/search?q=forth+site%3Aopencores.org|Google - Search for "forth site:opencores.org"]]. *[[http://forums.parallax.com/discussion/161686/fpga-forth-machines/|Parallax Forums "FPGA Forth machines"]]. *[[http://www.semiconductors-content.com/small-soft-core-up-inventory-opencores-4/|Semiconductors & Electronic Components Industry Links – Search Engine "Small soft core uP Inventory – OpenCores"]]. *[[http://aaltodoc.aalto.fi/handle/123456789/42790|Aalto University "Design and VHDL Implementation of an Application-Specific Instruction Set Processor"]]. *[[http://www.ultratechnology.com/chips.htm|Ultratechnology "Forth Chips"]]. *[[http://en.wikipedia.org/wiki/Soft_microprocessor|Wikipedia "Soft microprocessor"]] - "H2 CPU, Richard James Howe". ===== Commercial FORTH Systems & Professional Companies offering Implementation Services based on FORTH ===== ==== 8th ==== *[[http://www.8th-dev.com/|8th]] - "8th is a secure, robust, cross-platform, and fun programming language". *[[http://community.arm.com/developer/ip-products/system/b/embedded-blog/posts/8th-a-gentle-introduction-to-a-modern-forth|ARM Community "8th - a gentle introduction to a modern Forth"]], 2017. *[[http://www.reddit.com/r/Forth/comments/573lmq/8th_is_it_forth/|Reddit "8th - Is it Forth?"]] - "it's not Forth. Forth is emphatically NOT a batch-mode language". *[[http://comp.lang.forth.narkive.com/hUnkZRnW/forth-as-smartphone-s-operating-system|Narkive News Archive "comp.lang.forth.narkive.com", Thread "Forth as smartphone's operating system"]], 2018 - "Well, 8th implements almost all of its functionality in C/C++ using the JNI". *[[http://www.reddit.com/r/Forth/comments/a5fhlm/adding_sqlite_functions_in_8th/|Reddit "r/Forth", Thread "Adding SQLite functions in 8th"]], 2018. ==== FORTH on Apple II+ ==== *[[http://www.apple2history.org/history/ah17/|Apple II History "17-Languages, cont."]]. *Apple Forth 1.6, by Cap’n Software, 197X. *AppleFORTH 1.2, sold by Programma International, 1979. *GraFORTH by Paul Lutus. *TransFORTH II by Paul Lutus. *[[http://web.archive.org/web/*/http://hopl.info/showlanguage.prx?exp=7000|Archive.org "Online Historical Encyclopaedia of Programming Languages 'GraFORTH - Forth for the Apple ][ with AV primitives (Computer Language)'"]]. *[[http://www.virtualapple.org/graforthdisk.html|Virtual Apple 2 "GraForth"]]. *"Installation Procedure for Firefox 88 (Windows 10). ActiveGS only works with NPAPI compatible browser Install Waterfox CLASSIC". *[[http://support.mozilla.org/en-US/questions/1176670|Mozilla Support "Does the latest version of Firefox support NPAPI pluggins?"]] - "Beginning in Firefox 52+, NPAPI plugins like Silverlight, Java, Adobe Acrobat will no longer work but if you still require other plugins, you can download the ESR version of Firefox which will continue supporting NPAPI plugins until late 2018". ==== FORTH on ATARI 400 & ATARI 800==== === ATARI Coin-op Forth, ATARI Colleen Forth, fig-FORTH 1.4V on ATARI 400 & ATARI 800 === == Documentation == *Free online and PDF book [[http://www.archive.org/details/AtariCoinOpFORTHAndSwarthmoreExtensions/mode/2up|Archive.org "Coin-Op FORTH and Swartmore Extensions"]]. *"I.4 Coin-Op FORTH vs. Starting FORTH", page 6. *"II.1 The FORTH Kernel... the 250 or so words which constitute the heart of FORTH) is based on fig-FORTH. However, a number of modifications have been made...", page 10. *List of FORTH words TASK SAVENFAs FORMY LPWORDS WHERE N L SHOW LIST COPY LINE #OFLINES TEXT EDIT NOPLY COLPM! SIZE! HPOS! PLAYER GPRIOR COLPM VDELAY PRIOR PMBASE GRACTL DMACTL RND STRIG STICK PTRIG PADDLE SOUND XIO18 CLEAR DRAWTO POSITION COLOR SETCOLOR LOCATE PLOT DR. SE. PL. PUT C. Color LOC. GRAPHICS GR. POS. SPB PBASE Qbase FILDAT S: ACIO OPEN CLOSE GET Get CIO I2CAX I1CAX ICBLL ICPTL ICBAL ICSTA ICCOM ICDNO .IOC IOCB IOB IOC ATACHR LMARGN BOTSC CH CONSOL COL4 COL3 COL2 COL1 COL0 CHBAS CRSINH RTCLK DMCT DLST AUDCTL SKCTL C4AUD F4AUD C3AUD F3AUD C2AUD F2AUD C1AUD F1AUD CN EDITOR ARRAY ALLOC TBL \ BDUMP H? HH CH? CHH HD 2* 0SET 1- 1+! CODE ASSEMBLER VLIST TRIAD INDEX LIST ? . .R D. D.R #S # SIGN #> <# SPACES WHILE ELSE IF REPEAT AGAIN END UNTIL +LOOP LOOP DO THEN ENDIF BEGIN BACK FORGET ' UPDATE FLUSH R/W DDIO DIO SECIO SIO DECMAP TYPE ?TERMINAL CR EMIT KEY TCIOV ICAL ICLL ICCM --> LOAD MESSAGE .LINE (LINE) BLOCK BUFFER BFND DR1 DR0 EMPTY-BUFFERS ALT PREV PTAB M/MOD */ */MOD MOD / /MOD * M/ M* MAX MIN DABS ABS D+- +- S->D COLD ABORT QUIT ( DEFINITIONS FORTH VOCABULARY IMMEDIATE INTERPRET ?STACK DLITERAL LITERAL [COMPILE] CREATE ID. ERROR (ABORT) -FIND HASH NUMBER (NUMBER) 7BITS WORD PAD HOLD BLANKS ERASE FILL ♣ QUERY EXPECT ." (.") -TRAILING COUNT DOES> = - C, , ALLOT HERE 2+ 1+ PHYSOFF INPT HLD R# CSP FLD DPL BASE STATE CURRENT CONTEXT OFFSET SCR OUT IN BLK VOC-LINK DP FENCE WARNING WIDTH TIB +ORIGIN HIMEM B/SCR B/BUF LIMIT FIRST #LINKS C/L BL 3 2 1 0 USER VARIABLE CONSTANT ; : C! ! C@ @ TOGGLE +! DUP SWAP DROP OVER DMINUS MINUS D+ + < U< 0< 0= R R> >R LEAVE ;S RP! SP! SP@ XOR OR AND U/ U* CMOVE D8U* ENCLOSE (FIND) DIGIT J I (DO) (+LOOP) (LOOP) 0BRANCH BRANCH EXECUTE LIT *List of FORTH words of the Coin-Up kernel, in alphabetic order ( corrected printing mistakes: "ID." instead of "ID", "C/L" instead of "CL" ): ! !CSP # #> #LINKS #S ' (+LOOP) (,") (;CODE) (ABORT) (DO) (FIND) (LINE) (LOOP) (NUMBER) + +! +- +LOOP +ORIGIN , - --> -DUP -FIND -TRAILING * */ */MOD . ." .LINE .R / /MOD 0 1 2 3 0< 0= 0BRANCH 1+ 2+ 7BITS : ; ;CODE ;S < <# >R ? ?COMP ?CSP ?ERROR ?EXEC ?LOADING ?PAIRS ?STACK ?TERMINAL @ ABORT ABS AGAIN ALLOT ALT AND B/BUF B/SCR BACK BASE BEGIN BFND BL BLANKS BLK BLOCK BRANCH BUFFER C! C/L C, C@ CFA CMOVE COLD COMPILE CONSTANT CONTEXT COUNT CR CREATE CSP CURRENT D+ D+- D. D.R DBU* DABS DDIO DECIMAL DECMAP DEFINITIONS DIGIT DIO DLITERAL DMINUS DO DOES> DP DPL DR0 DR1 DROP DUP ELSE EMIT EMPTY-BUFFERS ENCLOSE END ENDIF ERASE ERROR EXECUTE EXPECT FENCE FILL FIRST FLDF FLUSH FORGET FORTH HASH HERE HEX HIMEM HLD HOLD I ICCM ICLL ID. IF IMMEDIATE IN INDEX INPT INTERPRET J KEY LATEST LEAVE LFA LIMIT LIST LIT LITERAL LOAD LOOP M* M/ M/MOD MAX MESSAGE MIN MINUS MOD NFA NUMBER OFFSET OR OUT OVER PAD PFA PHYSOFF PREV PTAB QUERY QUIT R R# R/W R0 R> REPEAT ROT RP! S->D S0 SCR SECIO SIGN SIO SMUDGE SP! SP@ SPACE SPACES STATE SWAP TASK TCIOV THEN TIB TOGGLE TRAVERSE TRIAD TYPE U* U/ U< UNTIL UPDATE USER VARIABLE VLIST VOC-LINK VOCABULARY WARNING WHILE WIDTH WORD X XOR [ [COMPILE] ] *List of FORTH words of the Coin-Up ATARI extensions, in alphabetic order: .IOC 0SET 1+! 1- 2* ACIO ALLOC ARRAY ATACHR AUDCTL BOTSC BDUMP C. C1AUD C2AUD C3AUD C4AUD CH CH? CHBAS CHH CIO CLEAR CLOSE CN COL0 COL1 COL2 COL3 COL4 Color COLPM COLPM! CONSOL CRSINH COLOR DLST DMACTL DMCT DR. DRAWTO F1AUD F2AUD F3AUD F4AUD FILDAT FORMY GET GR. GRACTL GRAPHICS Get H? HD HH HPOS! I1CAX I2CAX ICBAL ICBLL ICCOM ICDNO ICPTL ICSTA IOB IOC IOCB LMARGN LOC. LOCATE LPWORDS NOPLY OPEN PADDLE PBASE PL. PLAYER PLOT PMBASE POS. POSITION PRIOR PTRIG PUT Qbase RND RTCLK S: SAVENFAs SE. SETCOLOR SIZE! SKCTL SOUND SPB STICK STRIG TBL VDELAY XIO18 \ *List of figFORTH words not included in Coin-Op FORTH ( "DLIST" - This word was used to list the vocabulary; it had nothing to do with graphics display lists ): +BUF BLOCK-READ BLOCK-WRITE DLIST DUMP MON MOVE USE *List of FORTH words included in the kernel, but which are not part of the fig-FORTH model: #LINKS 7BITS ALT BFND D8U* DDIO DECMAP DIO FLUSH HASH HIMEM ICAL ICCM ICLL J PHYSOFF PTAB SECIO SIO TCIOV U< *List of FORTH words of the fig EDITOR, in alphabetic order: #OFLINES -MOVE $ % BL COPY CL DL DOIT EDIT EDITOR FLUSH HL IL L LINE LIST LL N RL SHOW SL TEXT TL TOPFLAG UL ULL WHERE *[[http://pc.net/helpcenter/answers/how_to_type_a_heart_symbol|PC.net. PC Help Center. Answers to Personal Computing Questions "How do I type a heart symbol with my keyboard?"]]. == Software == *[[http://atariage.com/forums/topic/238258-atari-coin-op-forth-and-swarthmore-extensions/|AtariAge "Atari Coin-Op FORTH and Swarthmore Extensions"]]. *Files: -Atari_Coin_Op_FORTH_14v.ATR -Swarthmore_Extensions_to_Atari_Coin_Op_FORTH_Disk1_June011983.ATR -Swarthmore_Extensions_to_Atari_Coin_Op_FORTH_Disk2_June011983.ATR -Swarthmore_Extensions_to_Atari_Coin_Op_FORTH_QE_Disk_June011983.ATR -TEXT1.ATR -TEXT2.ATR -TEXT3.ATR -TEXT4.ATR -TEXT5.ATR *"Coin-Op forth was put together by Steve Calfee, while he was still working @ Atari". == Resources == *[[http://atariage.com/forums/topic/169185-forth-coin-op-forth/|ATARIage "[Forth] Coin-op Forth?"]] - "Coin-op Forth, a sort of inhouse version at Atari". *[[http://www.atariarchives.org/creativeatari/Atari_Languages.php|ATARIarchives.org "Atari Languages"]] - "The development speed of Forth has not been overlooked by Atari. Atari's Coin-Op group has a semi-legendary "Coin-Op Forth" which is supposed to be quite something to use. The Atari demo disk with the 'Disco Dirge' background music is all 'coin-op Forth' Rumor also has it that many of the new Coin-Op games are written in Forth (Battlezone, for one)". *[[http://www.atarimagazines.com/hi-res/v1n1/strollingforth.php|ATARI Magazines "Strolling Forth"]] - "There are currently about a half-dozen Forths for the 400/800's. In approximate chronological order of appearance, they are: Coin-op Forth, a sort of inhouse version at Atari;... ". *[[http://atariwiki.org/wiki/Wiki.jsp?page=CoinOp%20FORTH|ATARIWiki.org "CoinOp FORTH"]] - "Here's some more info on the language from Mike Albaugh, via email to me on June 19 2015: "Coinop forth was developed in Atari coinop division by Steve Calfee and I, based on DECUS forth for the PDP-11. Steve modified the dictionary structure to speed compiles, and used direct threaded code rather than the standard indirect threaded code. This makes it not really forth, but improved performance. I ported the base system to the 400/800. Ed Logg added hooks for the graphics and sound routines in the OS, making Colleen Forth. **Later, as Forth became popular and fig forth came out, we did a port of it to the 800 as well. A major visible difference is that fig forth uses the new operators for stores ( ! and C! ) rather than the original ( = and \= ) which DECUS, coinop, Colleen forth does**. Fig forth also allows meta compilation, which came in handy for the cartridge version of my Point Of Purchase demo. Compared to Colleen Forth, though, it compiles (LOADs) really slowly. That was longer than I expected. Anyway, CoinOp forth was created mainly to allow relatively quick development of software tools on the 6502, where performance was not crucial, but was still important". *[[http://www.computingpioneers.com/index.php/Mike_Albaugh|ComputingPioneers "Mike Albaugh"]]. *"This is an interview with Mike Albaugh, who was an early Atari employee and the programmer behind the Atari 400, 800 in-store dealer demo". *"I got to say, also because we had decided that a good development platform for it was Forth and **Steve Calfee and I have done a port of DECUS, Forth for the PDP 11 to the 6502. Ed Logg — there’s a name you’ve probably heard — had done sort of Colleen [SP] bindings for the graphics and calls into the Atari 800 OS. We created 'Colleen Forth'**. Ported the Forth to the Colleen and Ed did his bindings". *[[http://www.quora.com/Did-Atari-use-the-Forth-language-for-any-of-their-software|Quora "Did Atari use the Forth language for any of their software?"]] - "I was there from late 1981 to early 1984, and was not aware that FORTH was used in any Atari systems. However, it is certainly possible that a use escaped my notice". *[[http://www.spectrumcomputing.co.uk/forums/viewtopic.php?t=436|Spectrum Computing Forums "First console and computer not progammed in assembly?"]] - "Atari used Coin Op Forth in house (A version of Fig Forth but with Atari specific add ons like a usable block editor that could also use files (Like ValForth), could use graphics and sound. , not sure how many applications/games got written with it but looking at the size of the manual for an internal program it must have been pretty widely used within Atari to get so much love to write a huge manual with multiple versions". *[[http://vectorgaming.proboards.com/thread/2297/languages-used-program-vectrex|Vector Forums "Languages used to program a Vectrex"]] - "Atari used 2 or 3 custom Forths developed for arcade and home computer, notably "Coin-op Forth", this is documented on archive.org and comp.lang.forth. Several Atari home computer games were written directly in Forth and I know arcade Gorf was written directly in Forth and using the built-in Forth assembler". *[[http://www.mcurrent.name/atarihistory/wci_games.html|Atari History Timelines by Michael Current "A History of WCI Games / Atari / Atari Games / Atari Holdings]] - "June 1?: Atari released the Atari Program Exchange (APX) Software Catalog Summer Edition 1981, introducing for the 400/800: ... FIG FORTH (also known as "Coin-Op Forth" or "Colleen Forth"; never shipped)". *[[http://en.wikipedia.org/wiki/Atari_800|EN.Wikipedia "Atari 800"]]. [[http://de.wikipedia.org/wiki/Atari_800|DE.Wikipedia "Atari 800"]]. *"Management identified two sweet spots for the new computers: a low-end version known internally as 'Candy', and a higher-end machine known as 'Colleen' (named after two Atari secretaries)". *"Die Entwicklungsarbeiten für die erste Variante wurde im November in ein separates Projekt mit dem Namen Candy – dem späteren Atari 400 – ausgegliedert, die für das hochwertige Gerät unter dem Namen Colleen weitergeführt". === Some other FORTH for ATARI 400 & ATARI 800 === == Software == *[[http://ftp.pigwa.net/stuff/collections/holmes%20cd/Holmes%201/ATR%20Programs/Applications%20A-Z/index.html|Index of /Atari/Holmes/Holmes 1/ATR Programs/Applications A-Z]]. *Antic Forth 1.4s A.atr *Antic Forth 1.4s B.atr *Beginner Forth 1.0 -800b.atr *Fig Forth 1.0d A.atr *Fig Forth 1.0d B.atr *Fig Forth 1.1.atr *Fig Forth 1.4S A.atr *Fig Forth 1.4S B.atr *QS Forth 1.0 -800b.atr == Manuals == *[[http://www.atarimania.com/documents-atari-400-800-xl-xe-manuals_2_8.html|AtariMania "Atari 400 800 XL XE Manuals"]]. == Resources == *[[http://www.mcurrent.name/|Michael Current]]. *[[http://www.mcurrent.name/atari-8-bit/faq.txt|Michael Current "Atari 8-Bit Computers: Frequently Asked Questions"]] ( of "comp.sys.atari.8bit" ), 2021-10-12 - "Forth". === ATARI 400 & ATARI 800 Emulators === == Software == *[[http://www.virtualdub.org/altirra.html|VirtualDub "Altirra"]]. *[[http://www.youtube.com/watch?v=CeaEE4Akdoo|YouTube "Altirra - The Absolute Best Emulator for the Atari 400/800/XL Computers"]]. *"Scrolling" can´t be stopped on an ATARI-400 & ATARI-800, by "CTRL-S" or "SCROLL LOCK”:-(, as with most PC homecomputers with BASIC. *With the Altirra emulator, simply press F8 to stop the computer, and so the scrolling. Press another F8 to continue. *[[http://atari800.github.io/|GitHub "Atari800 - portable and free Atari 8-bit emulator"]], [[http://github.com/atari800/|GitHub "atari800"]]. *App [[http://play.google.com/store/apps/details?id=name.nick.jubanka.colleen|Google Play, Kostas Nakos "Colleen"]]. == ROMs == *[[http://atari.vjetnam.cz/index.php?frame=roms|Vjetnam 8-bit ATARI games archive "System ROMs"]]. == Online Services == == Resoures == *[[http://www.atarimania.com/|AtariMania - The World's Finest Atari Database : games, demos, utilities for 2600, 5200, 400, 800, xl, xe, st and falcon]]. *[[http://www.atarimania.com/atari-400-800-xl-xe.html|AtariMania "Atari 400 800 XL XE"]]. *[[http://www.emutopia.com/index.php/emulators/category-items/3-emulators/320-atari-400-800-xl-xe|Emutopia "Atari 400 / 800 / XL / XE - Downloads - Emulators"]]. *[[http://simon.mooli.org.uk/LXF/Atari/Atari.html|Simon Mooli "The Atari Legacy. Simon Goodwin reviews Atari emulators for Linux"]]. ==== FORTH on ATARI-ST ==== *"4xFORTH". *[[http://www.stcarchiv.de/stc/12/4xforth|ST-Computer "4xFORTH: Superschnelles FORTH für den ST"]] - "4xFORTH von der Dragon Group". ==== Jerry Boutelle - Nautilus Metacompiler ==== *[[http://www.computer-programming-forum.com/22-forth/5ca4adcf268db32b.htm|Computer Programming Language Forum "Nautilus metacompiler"]], 2001. *"Version 1.0 of this compiler was shipped with extensive documentation about how it worked (1981/2)". *"When we removed this documentation, our technical support load decreased dramatically. Since that time, the compiler has been in continuous development, and we are now shipping v6 of the MPE Forth Cross Compiler". ==== John J Cassady - Metaforth ==== *See the book "John J Cassady: "Metaforth" at [[forth06.html|FORTH 6/7]]. *Software published as a book. *"METAFORTH, by the way, is a cross-compiler for Fig-FORTH. It can be used to regenerate a FORTH system including the nucleus without resort to an external conventional assembler. This is helpful when modifying low level words, generating "stand-alone" applications, converting to FORTH-79 and the like. A special section is devoted to generating headless configurations vith the same or different processor ==== ColorForth / arrayForth & polyForth ===== === Charles H. Moore - ColorForth / arrayForth & polyForth === *[[http://en.wikipedia.org/wiki/ColorForth|EN.Wikipedia "colorForth"]]. *[[http://colorforth.github.io/|GitHub.IO "Chuck Moore's colorForth, OKAD and S40 Forth Multicomputer chip"]], [[http://www.github.com/colorforth|GitHub "colorforth"]] - Fork of the discontinued original website of Chuck Moore ( [[http://web.archive.org/web/*/http://www.colorforth.com/|archive.org "Charles H. Moore ( Chuck Moore )"]] ( - 2016-04-16 ) ). *[[http://colorforth.github.io/cf.htm|GitHub.IO "Chuck Moore's colorForth, OKAD and S40 Forth Multicomputer chip" - "ColorForth"]]. *[[http://www.greenarraychips.com/home/documents/greg/cf-intro.htm|GreenArrays, Inc. "Introduction to arrayForth"]]. *[[http://www.greenarraychips.com/home/support/download-03c.html|GreenArrays, Inc. "Standard Terms and Conditions of Delivery for Free Software"]] - "polyForth was ported to the G144A12 by GreenArrays, Inc. and we have been granted permission by FORTH, Inc. for use of its Registered Trademark as well as for making its model available publicly. You are authorized to use polyFORTH as a development tool for systems and applications that run on our chips. You are not authorized to use this software with other chips than ours, nor to port it to other computers than the F18A, without a polyFORTH license from FORTH, Inc.". *[[http://www.youtube.com/watch?v=Ds2ZV8lj1-s|YouTube "Getting started with ArrayForth"]], 2014 - "This is almost identical to the ColorForth IDE too". *[[http://en-academic.com/dic.nsf/enwiki/245882/|Academic - Wikipedia "ColorForth"]] - "There was an earlier predecessor called 386 OK which appeared for sale at Silicon Valley Forth Interest Group (SV-Fig) ... meetings in 1992 [386 OK, A new Operating System Invented by Chuck Moore, Computer Cowboy Reins In A Wildhorse, C.H.Ting, Offete Enterprises, 1992]". *[[http://en.wikipedia.org/wiki/ColorForth|EN.Wikipedia "ColorForth"]]. === The OpenSource R3 & R4 === *[[http://www.forthlang.org/|Forth Language ( forthlang.org ) "r3 and r4 Compilers"]]. *[[http://www.github.com/phreda4|GitHub "Pablo Hugo Reda ( phreda4 )"]]. *[[http://www.github.com/phreda4/r4|GitHub "phreda4 / r4"]] - "Computer Programming Language based on ColorForth ideas". *[[http://www.github.com/phreda4/r3d4|GitHub "phreda4 / r3d4"]] - "r3 is a concatenative language of the forth family, more precisely it takes elements of ColorForth. Word colors are encoded by a prefix: in r3 this prefix is explicit". *[[http://www.github.com/phreda4/esp32-forth-computer|GitHub "phreda4 / esp32-forth-computer"]] - "Forth computer made in ESP32". *[[http://www.reddit.com/user/phreda4/|Reddit "u/phreda4"]]. *[[http://www.facebook.com/pablohugo.reda|Facebook "Pablo Hugo Reda"]]. === ColorForth as implementation of the "Machine Forth" Concept === *[[http://wiki.c2.com/?MachineForth|C2 Wiki "Machine Forth"]]. *"A significantly reduced set of and in some cases redefined semantics for Forth primitives. The intention is to take advantage of the existing microprocessor as much as possible as a stack CP". *Typical characteristics of a MachineForth include: *Tail recursion elimination. *Non-destructive IF (in ANSI Forth, IF pops the value it tests off the stack; in MachineForth, IF actually tests the CPU's zero flag directly). *A new core word, -IF, is used to quickly check for less-than-zero conditions. *?, 0=, or some other primitive to set the CPU's zero-flag correctly for the benefit of IF. *0< or similar primitive to set the CPU's negative-flag correctly for the benefit of -IF. *Compiled words have no headers in the output image; the output of a MachineForth compiler is very often a static binary image, as you'd get from, say, a C compiler. *See [[http://colorforth.github.io/forth.html|colorForth "Pentium colorForth"]] for a sample mapping of ColorForth primitives, derived from an earlier set of MachineForth primitives, and how they map to Intel Pentium machine language instructions. *[[http://www.ultratechnology.com/mfp21.htm|Jeff Fox, UltraTechnology "MuP21. Machine Forth. Tutorial #1"]]. === Ports of ColorForth === *[[http://colorforth.sourceforge.net/|SourceForge "colorForth"]], [[http://www.sourceforge.net/projects/colorforth/|SourceForge "colorForth"]]. *[[http://www.github.com/flagxor/rainbowforth|GitHub "Brad Nelson ( flagxor ) / rainbowforth"]] - "Rainbow Forth is an implementation of the colorForth dialect of the Forth programming language designed to run under Linux or Windows". *[[http://www.github.com/narke/colorForth|GitHub "narke / colorForth"]] - "Native 32-bit colorForth for PCs, Bochs and Qemu". *[[http://www.github.com/Howerd/colorForth|GitHub "Howerd / colorForth"]] - "colorForth running in Bochs for Windows". ==== FORTH,Inc. - microFORTH, SwiftForth, PolyFORTH ==== *[[http://www.forth.com/|FORTH,Inc - FORTH-based software and services since 1973]]. *The once-commercial, now OpenSource, free only for non-commercial use [[http://www.forth.com/resources/archive-forth-systems-software/|Forth, Inc. "microFORTH"]]. *Documentation: *microFORTH Primer (2nd ed., August 1978). *microFORTH Technical Manual for RCA 1802 (COSMAC). *Documentation for microFORTH on RCA 1802 (COSMAC). *Source code: *Source code: RCA 1802 microFORTH. *[[http://www.cosmacelf.com/|COSMAC ELF. The CDP1802’s Place in Microcomputing History]]. *[[http://en.wikipedia.org/wiki/RCA_1802|EN.Wikipedia "RCA 1802"]], [[http://de.wikipedia.org/wiki/RCA_1802|DE.Wikipedia "RCA 1802"]]. *List of FORTH words IMMEDIATE IMMEDIATE ( 8* LOAD M* M/MOD */MOD */ /MOD MOD * / MAX MIN # +C 1RG ALU ENTRY NEXT 0#LD DST PUSH EFL < 0< IF THEN ELSE END BR LS (MARK) (THEN) DO LOOP +LOOP IF WHILE BEGIN MESSAGE QUESTION ?STACK (NUMBER) VOCABULARY DEFINITIONS FORGET IN-LINE ['] [SWAP] SPACES PAD <# #> SIGN #S (.) ? . .R DUMP -TRAILING LINE TEXT LIST L [ HOLD GAP T D R I " P A COPY DELETE TOP TYPE COUNT MSG EXPECT QUIT DRO DRI C# #LEFT L# AT STRING ERR 1LINE FIND M REMOVE B N F X TILL C MOVE FILL RIGHT BACKUP SWEEP MATCH STATUS ERROR LOG NOTIFY DUP [BLOCK] INDEX TRIAD SHOW B! P! DISK ADRS HERE ORG C, , CLEAR SMUDGE EMPLACE H@ H! INSIDE C@ C! @ ! ,HOST ;CODE -' \ COMPILE EQU LABEL CR COMPUTER ACCESSIBLE CONSTANT USER TABLE DOES> THERE RES ; H: : LEADER PROMS ENTIRE SIMULATE ZERO LIT EXECUTE ;S U* U/ CZ 0= 0< + 2* - AND BINARY 1+ 2+ OVER -DUP SWAP +! ROT 2POP 1POP = LITTLE TIMES TEST *[[http://www.forth.com/download/|Forth, Inc "Free IDE to Evaluate, Explore, Learn"]]. *The commercial "SwiftForth" for Windows, Linux. *The commercial "SwiftX for embedded systems development". *SwiftX ARM, SwiftX ColdFire, SwiftX MSP430, SwiftX AVR, SwiftX 68HCS08, SwiftX 68K, SwiftX 68HC12, SwiftX 68HC11, SwiftX 8051, SwiftX 69R000, SwiftX RTX2010". *"Each SwiftX Evaluation Version has everything you need to experience the SwiftX development system, including low-level details, target source code, full documentation, and useful background material. There is no evaluation time limit, but the target object code is size limited for the evaluations". The PDF documentation includes: *"American National Standard for Information Systems. Programming Languages. Forth ( DPANS94 )" ( PDF ). *"Forth 200x Standardisation Committee: Forth 2012. 10th November, 2014" ( PDF ). *Edward K. Conklin, Elizabeth D. Rather: "Forth Programmer's Handbook" - "Third edition, August 2007. Latest revision, October 2010" ( PDF ). *[[http://comp.lang.forth.narkive.com/crgsjzC3/microforth|Narkive Archive "comp.lang.forth", "microFORTH"]], 2015. ==== ForthCMP ==== *The Shareware [[http://www.almy.us/forthcmp.html|The ForthCMP Forth Compiler]] for MSDOS. Documentation just for registered customers. ==== David Husband - Multi-Tasking FORTHs ==== === Software === *[[http://www.computinghistory.org.uk/det/43956/BBC-Multi-Forth-83/|The Centre for Computing History - Computer and Video Game Museum - Cambridge "BBC Multi-Forth 83"]] - "This Manual is intended as a guide to the use of Multi-FORTH 83, and assumes that the user will read it in conjunction with a book on FORTH...Multi-FORTH 83 is Multi-tasking. This gives the programmer the ability to write real-time routines" - No download! *[[http://www.emuparadise.me/Amstrad_CPC_ROMs/AMS-FORTH_(UK)_(1994)/126144|Emuparadise "AMS-FORTH (UK) (1994) ROM"]] - "This game is unavailable" :-(. *[[http://www.github.com/monsonite/Z80_Forth|GitHub "monsonite / Z80_Forth"]] - "David Husband's Multitasking ZX81 Forth from 1983 - rehashed for experimental Z80 board". === Resources === *[[http://comp.sys.amstrad.8bit.narkive.com/yDWcs09U/hisoft-forth-available|Narkive Archive "comp.sys.amstrad.8bit.narkive.com", Thread "Hisoft Forth available?"]] - "The Skywave Software Forth which is on CPC-Power is called AMS-FORTH and it appears to be distributed through Skywave Software". *[[http://www.sinclairzxworld.com/viewtopic.php?t=459|Sinclair ZX80 / ZX81 / Z88 Forums "TreeForth,H4TH ROM and word processor"]]. *[[http://forum.tlienhard.com/phpBB3/viewtopic.php?t=3270|forum.tlienhard.com - Das Forum für Sinclair und Amiga Freunde "Husband Forth Versionen"]] - "Beim EightyOne Emulator ist ja ein H4TH.ROM dabei". *[[http://cs.wikipedia.org/wiki/Skywave_Forth|CS.Wikipedia "Skywave Forth"]]. ==== iFORTH ==== *[[http://home.iae.nl/users/mhx/|Marcel Hendrix "iForth"]]. *Still just for sale in 2017, no freeware. "How to order iForth for Windows, OSX and Linux. The set of three iForths for Windows, OSX and Linux costs 100 Euros. Buy iForth with PayPal". *No further development since 2017-11-19. *"Links to all iForth pages on this server". ==== Laboratory Microsystems, Inc. - LMI UR/FORTH, LMI PC/FORTH, LMI WinForth ==== === The Software House === *[[http://www.linkedin.com/in/raygduncan/|LinkedIn "Ray Duncan"]]. *[[http://web.archive.org/web/*/http://www.cerfnet.com/~lmi/|Archive.org "Laboratory Microsystems, Inc."]] ( - 1999-10-08 ). *WinForth Shareware Version 1.01. *LMI WinForth is case-sensitive. Standard words are in capital letters ( only ), extra words are sometimes in small letters, or start with capitalized letter. Examples: -"SetMenu". -"doest". -"CONTEXT" of FORTH-83. *LMI UR/FORTH for MSDOS. *LMI PC/FORTH for MSDOS. === Downloads === *Downloads for WinForth ( "wfshr101.exe" ⇒ Win10, 64-bit "This app can´t be run on your PC" :-( ). *[[http://www.forth.org/compilers.html|Forth Interest Group (FIG ) "Forth Compilers Page"]] - "LMI WinForth V1.01, a Shareware Forth for Windows". *[[http://www.taygeta.com/forthcomp.html|Taygeta "Forth Compilers on Taygeta"]] - "LMI WinForth V1.01, a Shareware Forth for Windows". *[[http://www.complang.tuwien.ac.at/forth/ftp.dei.isep.ipp.pt/pub/forth/reviewed/|complang.tuwien.ac.at/forth/ftp.dei.isep.ipp.pt/pub/forth/reviewed]] - "wfshr101.exe". *[[http://forum.winworldpc.com/discussion/11778/offer-lmi-pc-forth-2-0|WinWorld Discussions "[OFFER] LMI PC/FORTH+ 2.0"]] - "LMIFORTH.zip" ⇒ Win10, 64-bit "This app can´t be run on your PC" :-(. On W2k: Somehow most of the FORTH vocabulary is missing, i.e. there is no "WORDS", ect. File "NUCLEUS.EXE" knows at least "1 2 + .", file "FORTH.EXE" not even that... === Resources === *[[http://computer-programming-forum.com/22-forth/d2c0eb945f4d3b87.htm|Computer Programming Forum "forth" - "LMI Forth(s)"]] ( without "www." ). *[[http://www.edm2.com/index.php/LMI_Forth-83|EDM/2 "LMI Forth-83"]] - "A Forth 'metacompiler' (cross-compiler) that runs on top of UR/Forth from the same company, it is a cross development program that allows you to develop code in Forth that is then cross compiled to run on most available microprocessors that were available on the market in the latter half of the 1980's". *[[http://www.edm2.com/index.php/UR/Forth|EDM/2 "UR/Forth"]]. ==== MicroProcessor Engineering Limited ( MPE ) - VFX Forth ==== *[[http://www.mpeforth.com/software/pc-systems/|MicroProcessor Engineering Limited ( MPE ) "VFX Forth"]]. *[[http://soton.mpeforth.com/downloads/|MicroProcessor Engineering Limited ( MPE "Download Directory"]]. *[[http://soton.mpeforth.com/downloads/VfxCommunity/|MicroProcessor Engineering Limited ( MPE ) "VFX Forth Community editions"]]. *VFX Forth Community editions. *[[http://soton.mpeforth.com/downloads/VfxCommunity/Pinc.new.zip|Pinc.new.zip]] - "PowerForth 32/64 in C: A fairly traditional Forth in C" ( = "PinC - PowerForth in C" ). ==== Miller Microcomputer Services - MMSFORTH ==== *[[http://www.mpeforth.com/|Miller Microcomputer Services]]. *[[http://www.millermicro.com/mmsforth.html|Miller Microcomputer Services "MMSFORTH Software and FORTH Books, FORTH Links"]]. *"MMSFORTH software is no longer extensively developed or supported, and MMS no longer makes it available to the general public". *Software: *MMSFORTH/nonDOS for IBM-PC. *MMSFORTH/MS-DOS. ==== MVP Forth ==== *The Shareware MVP Forth for MSDOS and AMIGA OS. *AMIGA OS: *[[http://www.aminet.net/package/dev/lang/MVP-FORTH|Aminet - dev/lang/MVP-FORTH.lha]] - "Architecture: m68k-amigaos". "A shareware version of forth from Fantasia Systems. Runable from the workbench, comes with icons and such. If you use this, you should send a contribution to Fantasia Systems / Mountain View Press". *MSDOS, "MVP-FORTH VERSION 1.0405.03": *[[http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/devel/forth/mvpforth/make-mvp.zip|make-mvp.exe]] ( HTTP ). *[[ftp://ftp.taygeta.com​/pub/Forth/Archive/ibm/make-mvp.exe|make-mvp.exe]] ( FTP ). *[[http://www.theforthsource.com/catalog.html|TheFourceSource "The Forth Source - Catalog"]]. *"Public Domain Forth Implementations. Implementation Levels. Level 0, 1, 2, 3, 4, 5". *[[http://www.theforthsource.com/guide.html|TheFourceSource "Glen B. Haydon: The Forth Guide"]] - "After two years of weekly evening tutorials, I found students had a number of stumbling blocks. I wrote the Forth Guide to complement Starting Forth in assisting the beginner to understand the MVP-FORTH implementation". *MVP-FORTH implements the **FORTH-79** standard. *FORTH79 words missing in the MVP-FORTH wordset listed by **VLIST** :-(: ***2ROT** :-(. ***END-CODE**. Though it is even mentioned in the document [[http://www.theforthsource.com/guide14.html|TheForthSource, Glen B. Haydon "The FORTH Guide - Chapter XIV Assemblers"]] :-(. *Additionally many FORTH79 reference words are not implemented. *List of "less than 140" FORTH words: ;CODE CODE ENTERCODE ASSEMBLER ?ERROR4 ?ERROR3 ?ERROR2 ?ERROR1 --> EDITOR WIPE LINE MATCH ['] U.R OCTAL H FLUSH ERASE EMPTY >TYPE >BINARY 2VARIABLE 2SWAP 2OVER 2DUP 2DROP 2CONSTANT 2@ 2! -TEXT 'S SAVE-FORTH .S .SR .SL .SS VLIST INDEX ID. DVARIABLE DUMPL DUMP DUMP-HEADER PAUSE .INDEX DMIN DMAX DCONSTANT D@ D> D= D0= D- DU< DSWAP DOVER COPY BMOVE \ TRIAD 'TITLE TITLE THRU ] [COMPILE] [ XOR WORD WIDTH WHILE WHERE WARNING VOCABULARY VOC-LINK VARIABLE USER USE UPDATE UP UNTIL U< U/MOD U. U* TYPE TRAVERSE TRACK TOGGLE TIB THEN TEXT T&SCALC SYSCALL SWAP STATE SPT SPDRV SPBLK SPACES SPACE SP@ SP0 SP! SMUDGE SIGN SET-DRX SEC/TR SEC/BLK SEC-WRITE SEC-READ SEC SCR SAVE-BUFFERS S0 S->D RPP RP@ RP! ROT ROLL REPEAT R@ R> R0 R/W R# QUIT QUERY PW@ PW! PREV PP PICK PFA PAGE PAD P@ P! OVER OUT OR OFFSET NUMBER NOT NFA NEXT1 NEXT NEGATE MOVE MOD MIN MAX-DRV MAX M/MOD M/ M+ M*/ M* LOOP LOAD LITERAL LIT LIST LIMIT LFA LEAVE LATEST KEY J INTERPRET INTCALL INIT-USER INIT-FORTH IMMEDIATE IF I' I HOLD HLD HEX HERE FREEZE FORTH FORGET FLD FIRST FIND FILL FENCE EXPECT EXIT EXECUTE EPRINT ENCLOSE EMPTY-BUFFERS EMIT ELSE DUP DROP DRIVE DR4 DR3 DR2 DR1 DR0 DR-DEN DPUSH DPL DP DOES> DO DNEGATE DLITERAL DISK-ERROR DIGIT DEPTH DENSITY DEN DEFINITIONS DECIMAL DDUP DDROP DABS D< D.R D. D+- D+ D! CURRENT CSP CREATE CR COUNT CONVERT CONTEXT CONSTANT CONFIGURE COMPILE COLD CMOVE CLEAR CHANGE CFA C@L C@ C/L C, C!L C! BYE BUFFER BRANCH BPDRV BLOCK BLK/DRV BLK BLANK BL BEGIN BASE APUSH AND ALLOT AGAIN ABS ABORT" ABORT @L @ ?TERMINAL ?STREAM ?STACK ?PAIRS ?LOADING ?DUP ?CSP ?CONFIGURE ?COMP ? >R >IN > = < <;CODE> <."> <-FIND> <+LOOP> <# < ; : 79-STANDARD 2/ 2- 2+ 2* 2 1- 1+ 1 0BRANCH 0> 0= 0< 0 /MOD /LOOP / .R .LINE ." . -TRAILING -FIND - , +LOOP +BUF +- +! + */MOD */ * ( 'WORD 'VOCABULARY 'T&SCALC 'STREAM 'R/W 'PAGE 'NUMBER 'LOAD 'KEY 'INTERPRET 'EXPECT 'EMIT 'CR 'BLOCK 'ABORT '?TERMINAL '-FIND ' #S #BUFF #> # !L ! ==== QED Software / QED Real-Rime Operating System ==== *[[http://www.mosaic-industries.com/Products/Software/QED-forth-embedded-software.html|Mosaic Industries, Inc. "Embedded multitasking RTOS supports programming in the Forth and C languages"]]. ==== Quartus Forth for Palm OS Handheld Computer ==== *The Shareware Quartus Forth. *[[http://www.quartus.net/products/forth/|Quartus Forth. An On-Board Development Environment for the Palm OS]]. *[[http://web.archive.org/web/*/http://www.interlog.com/~nbridges/p4th.html|Archive.org "Neal Bridges' PilotFORTH"]] ( - 1999-10-07 ) *[[http://www.anomaly.org/wade/projects/pilot4th/|G. Wade Johnson "PilotFORTH Code"]]. *[[http://www.tarunz.org/~vassilii/pub/reversi/|Vassilii Khachaturov "PilotFORTH reversi"]]. *[[http://en.wikipedia.org/wiki/Palm_OS|EN.Wikipedia "Palm OS"]], [[http://de.wikipedia.org/wiki/Palm_OS|DE.Wikipedia "Palm OS"]]. ==== TERSE ( "Terse Efficient Recursive Stack Engine", "Terse Efficient Reentrant Stack Engine" ) ==== *[[http://ballyalley.com/documentation/TERSE/TERSE_Language_Documentation.html|Bally Alley - The Newsletter for Astrocade Users "TERSE"]]. *"This programming language was used at **Dave Nutting Associates** to program arcade games such as The Adventures of Robby Roto!, GORF and other games from the late 1970s and early 1980s. The TERSE language is based on FORTH". *"There are several complications, GORF was written in Forth, but MsGORF was written in an early version of TERSE". *[[http://www.professionalmagic.com/gorf|ProfessionalMagic "Gorf"]]. *"Ms GORF was programmed in Nutting's Terse 78. Which is like Forth with extensions for **Nutting**". *[[http://www.bitsavers.org/pdf/nuttingAssoc/|bitsavers.org/pdf/nuttingAssoc]]. *[[http://www.bitsavers.org/bits/Nutting_Assoc/|bitsavers.org/bits/Nutting_Assoc]]. *"MSGORF.zip". *"Nutting_ICE.zip". *[[http://en.wikipedia.org/wiki/Gorf|EN.Wikipedia "Gorf"]]. *"Gorf is an arcade game released in 1981 by Midway Manufacturing". *"A planned sequel, Ms. Gorf, was never released. It was programmed in the programming language Forth. The source code for the prototype is owned by Jamie Fenton. The game exists only as source code stored on a set of 8-inch floppy disks, and would require access to a development environment that no longer exists in order to compile it into executable machine code". *[[http://ballyalleyastrocast.libsyn.com/bally-alley-astrocast-episode-12-icbm-attack-by-spectre-systems|Bally Alley Astrocast: Bally Alley Astrocast: Episode 12 - ICBM Attack by Spectre Systems]] - ... Terse. *[[http://en.wikipedia.org/wiki/Midway_Games|EN.Wikipedia "Midway Games"]], [[http://de.wikipedia.org/wiki/Midway_Games|DE.Wikipedia "Midway Games"]] - "Midway Games Inc., known variously as Midway Manufacturing and Bally Midway". *List of FORTH words, in alphabetic order: ! . ) * + +! +BLOCK +LOOP , - --> . ." .LIST .NLIST / /MOD 0 0< 0= 0> 0END 1 1+ 1+! 1- 1-! 2* 2+ 2- 2/ 2DROP 2DUP 2SWAP : ; ;S < << <= <> = > >= >> >R ? @ A" ABORT ABS AND ARRAY ASM B! B: B@ BARRAY BASE BEGIN BELL BLK BLOCK BMOVE BPTR BTA BTABLE BUFFER BUILD BYE BYTE CASE CCALC CIN CODE COM CONSTANT CONTEXT CONTINUED COPY COUNT COUT CR CURRRENT DECIMAL DELIM DGTS DIR DISKCOPY DLIT DO DP DP+! DPREC DROP DUMP DUP E.B E.O EDIT ELSE EMPTY END ENTER ERASE-CORE EXEC EXPECT FILECOPY FIND FLD FLUSH FNAME GETC GOODBYE H. HELP HERE HEX HEXLIST HEXSHOW I I+ IF IFEND IFTRUE IMMED INP IOFF J J+ K K+ LAST LEAVE LINE LINELOAD LIST LIT LITERAL LOAD LOOP LOUT MAX MIN MINUS MOD MOVE NAND NEXT NOR NOT NUMBER OCTAL OR OTHERWISE OUTP OVER PAGE PICK PRINTOUT PROT PUTC R> REPEAT ROT SCR SET SHOW SKIP SP@ SPACE SPACES STATE SPACES? STYPE SWAB SWAP SYSCOPY TABLE TECO TFLAG THEN TYPE U! UERR UPDATE UNPROT VARIABLE VPTR WHILE WHERE WORD XOR ZERO [ [[ ] ]] *List of FORTH words of the proposed Video Game System Vocabulary: SWAB ROTN VECTOR LIMIT NEG! RELABS SHOW 0SHOW 1SHOW 2SHOW 3SHOW 4SHOW 5SHOW 6SHOW 7SHOW 0SHOWI POST 1POST #POST #TOA CLOCK ERASE 1DOT DRAW BOX ELLIPSE COLOR FLOOD VERTICAL HORIZONTAL RANDOM SOW *[[http://dict.leo.org/german-english/terse|LEO.org "terse"]] - "kurz&bündig,...". ==== Testra Corporation ==== *[[http://www.testra.com/Forth/|Testra Corporation "Product development utilizing the FORTH programming language"]]. ==== White Lighting by Oasis Software ==== *[[http://www.forth.org/lightning.html|Forth Interest Group (FIG) "White Lightning"]]. *[[http://www.spectrumcomputing.co.uk/entry.php?id=8967|Spectrum Computing "White Lightning"]]. *Manual "WhiteLighting.PDF". *Chapters *"SPECTRA FORTH". *"IDEAL". *"FIG-FORTH GLOSSARY". *List of FORTH words, in alphabetic order: *"IDEAL GLOSSARY". *List of FORTH words, in alphabetic order: ... 'RND N1' 'OUT# N1, N2' 'IN# N1' ZAPINT ZAP 'CALL N1' 'KB N1, N2' 'SCANV COL, ROW' 'SCANM SPN' 'BLEEP N1, N2' *"FORTH/BASIC GLOSSARY". *List of FORTH words, in alphabetic order: COPY 'AT N1, N2' 'BORDER N1' CLS 'DRAW-ARC N1, N2, N3' 'CIRCLE N1, N2, N3' 'DRAW N1, N2' 'PLOT N1, N2' 'SCREEN$ N1, N2' 'ATTR N1, N2' 'POINT N1, N2' 'TAB N1' 'OVER N1' 'INVERSE N1' 'BRIGHT N1' 'FLASH N1' 'PAPER N1' 'INK N1' *"EXTENDED SPECTRA FORTH GLOSSARY". *List of implementation-specific FORTH words, in alphabetic order: PRT-ON PRT-OFF 'EDIT N1' WARM->COLD J K 'DUMP N1' WARM 'EMITC N1' *[[http://www.spectrumcomputing.co.uk/zxsr.php?id=8967|Spectrum Computing Reviews "White Lightning"]]. *[[http://www.worldofspectrum.org/archive/software/utilities/white-lightning-oasis-software|World of Spectrum "White Lightning"]]. *Manual "WhiteLighting.PDF". *[[http://www.youtube.com/watch?v=IgmZ2Ht-QiQ|YouTube "ZX Spectrum 48k: "White Lightning" Demo (1984)"]]. ===== Commercial Application Software based on FORTH ===== ==== Applications ==== === ASYST === *[[http://www.jstor.org/stable/1699106|JSTOR "The ASYST Software for Scientific Computing"]] ( Science New Series, Vol. 236, No. 4805 (May 29, 1987), pp. 1128-1132 (5 pages) ). *[[http://ur.booksc.eu/book/29812563/9c5a8e|Analytical Chemistry 1985 / 05 Vol. 57; Iss. 6 "ASYST MACMILLAN SOFTWARE CO."]] - "ASYST Scientific Software. Aquisition, analysis and graphics capabilities turn your IBM PC into a powerful workstation". Advertising page with screenshots of graphics created with ASYST. *[[http://www.computer-programming-forum.com/22-forth/a701340e1299f5c2.htm| computer-programming-forum.com "Is ASYST Forth?"]] - "Laboratory Microsystems lists ASYST as one of the commercial applications which uses LMI Forth". *[[http://cr4.globalspec.com/thread/11509/Where-is-the-program-ASYST-gone|GlobalSpec Engineering 360 Forum "Where is the program "ASYST" gone ??"]]. *"About 15-20 years ago there was a very powerful (and expensive!) DOS-program named "ASYST" for data acquisition, evaluation and presentation. It was sold by Keithley, hp, tektronix and other triple-A-companies. Interesting was that it has been programmed based on the very stable and less memory consuming FORTH". *"Keithly recommends Annson & Associates for continued support of Asyst". *[[http://web.archive.org/web/*/http://www.annson.co.uk/|Archive.org "Annson & Associates Ltd."]] ( - 2017-04-23 ). *[[http://en.wikipedia.org/wiki/Forth_(programming_language)|EN.Wikipedia "Forth (programming language)"]] - "ASYST was a Forth expansion for measuring and controlling on PCs". === Death Road to Canada === *[[http://deathroadtocanada.com/|Death Road to Canada]]. *[[http://www.rocketcat-games.com/|RocketCat Games]]. *[[FanMail@rocketcat-games.com]] - SEND FEEDBACK OR FAN ART -. *[[Support@rocketcat-games.com]] - REPORT BUGS -. *[[Press@rocketcat-games.com]] - PRESS CONTACT -. *[[http://www.facebook.com/rocketcatgames/|Facebook "Rocketcat Games, @rocketcatgames"]]. *[[http://www.twitter.com/rocketcatgames|Twitter "Rocketcat Games"]]. *[[http://www.gog.com/game/death_road_to_canada|GOG "Death Road to Canada"]]. *[[http://www.humblebundle.com/store/death-road-to-canada|Humble "Death Road to Canada"]]. *[[http://store.steampowered.com/app/252610/Death_Road_to_Canada/|Steam "Death Road to Canada"]]. *[[http://www.reddit.com/r/deathroadtocanada/|Reddit "r/deathroadtocanada"]]. *Steam. *[[http://www.steamcommunity.com/app/252610/discussions/0/133260492061810829/|Steam Community "Death Road to Canada" - Discussions "Bought the game because it is forth"]]. *[[http://www.steamcommunity.com/app/252610/discussions/0/353916981471210446/|Steam Community "Death Road to Canada" - Discussions "DEATHFORTH ERROR"]] - Example of a "Call Trace". *[[http://mezzelo.itch.io/firearms-nae-freaks|Itch "Mezzelo"]]. *[[http://mezzelo.itch.io/firearms-nae-freaks|Itch, Mezzelo "Firearms nae Freaks"]]. *[[http://www.github.com/Mezzelo/freaks-and-firepower|GitHub "Mezzelo / freaks-and-firepower"]] - "Content mod for Death Road to Canada". *[[http://www.youtube.com/watch?v=kyyGV-WKA5M|YouTube "DRTC: Freaks n' Firepower Update 4.51/(Firearms nae Freaks)"]]. *[[http://www.twitter.com/elozzelo|Twitter "mezzelo, @elozzelo"]]. === Starflight === *[[http://pmig96.wordpress.com/starflight_home/|Pumpkin OS "Starflight"]] - "Starflight was a great computer game for the IBM PC released back in 1986. ... Starflight was written in a mix of FORTH and x86 Assembly". ==== Resources ==== *[[http://www.computer-programming-forum.com/22-forth/51846d5b644f6122.htm|Computer Programming Language Forum "Why no Forth games?"]]. *"The famous Infocom games (Hitch Hikers Guide to the Galaxy, and others) were written in Forth". "No, Infocom wrote their adventures using ZIL which was lisp-based". "No, I read an interview with the makers of the Infocom adventures, and they admitted that it was written in Forth". "The orignal ZORK was written in MUDDLE (aka MDL, a successor to LISP) for the PDP-10. The Infocom games were written in what was known as Zork Implementation Language (ZIL, aka z-code, similar to MDL) which was compiled to z-code and ran on a virtual z-machine. The Z-machine Interpreter Program (aka ZIP), that executed the z-code on the user's machine, might have been written in forth on some platforms. I haven't found anything that would confirm or deny this". *"Breakout was written in Forth". *"In 1981 I was the technical director of Unison World, a game company in Berkeley. We produced over a dozen games for CP/M machines, all written in fig-Forth. Those games were sold only in Japan, unfortunately, so I never had the thrill of seeing my own work on the local computer store shelves. The games were distributed by Japan SoftBank". *"There was a space exploration game called Starflight or some such written in Forth, and one of the Football Manager (soccer) series was done in Forth - MPE did some of the tool making for it". *"However I believe there was an action games toolkit/language for the ZX Spectrum which was forth-like". ===== Commercial Services ===== ==== Training, Education ==== *[[http://www.forth-schulung.de/|Forth Schulungen, Carsten Strotmann]]. ==== Commercial FORTH Experts & FORTH Development Services ==== *[[http://www.cornu.de/|Cornu GmbH]]. *[[http://www.fortech.de/|FORTecH Software GmbH]]. *[[http://www.kima-process.de/|KIMA Process Control GmbH]]. *[[http://www.microonline.info/|Microonline ( Klaus Kohl-Schöpe )]], [[http://www.designin.de/|Microonline ( Klaus Kohl-Schöpe )]], [[http://www.linkedin.com/in/klaus-kohl-sch%C3%B6pe-8a094826/|LinkedIn "Klaus Kohl-Schöpe"]], [[http://www.xing.com/profile/Klaus_KohlSchoepe2/|XING "Dipl.-Ing. Klaus Kohl-Schoepe"]], [[http://www.facebook.com/klaus.kohlschope|Facebook "Klaus Kohl-Schöpe"]]. *[[http://docplayer.org/24792144-Mcforth-klaus-kohl-schoepe-prof-hamp-str-eppishausen-ein-forth-fuer-viele-microcontroller.html|DocPlayer "mcforth Klaus Kohl-Schöpe Prof.-Hamp-Str Eppishausen Ein FORTH für viele Microcontroller"]]. *[[http://www.servonaut.de/|tematik GmbH]]. *[[http://www.testra.com/|Testra Corporation - The New Art in Stepping Motor Drive and Control]]. *[[http://www.testra.com/Forth/|Testra Corporation "Product Development utilizing the FORTH programming language"]]. ==== Sales ==== *"Forth-Systeme Angelika Flesch". *Company location: *Titisee/Neustadt, Germany ( 1983...1992 - ? ). *Breisach am Rhein, Germany ( 2017 ). *[[http://www.companyhouse.de/p/Angelika-Flesch-bSX8vW8-8nW3XYJPB8CRZkgUSmw|CompanyHouse "Angelika Flesch"]]. *1992-03-06 - 2007-06-10 "FS FORTH-Systeme GmbH". *[[http://web.archive.org/web/*/http://www.fsforth.de/|Archive.org "FS FORTH-Systeme GmbH"]]. *"FS FORTH-Systeme GmbH" contents ( - 2006-08-16 ), but no informations about FORTH programming language or FORTH boards :-(. *"Digi International" contents ( - 2012-01-06 ). *2001-05-31 - 2016-09-22 "Embedded Solutions GmbH". *[[http://www.es-ag.com/|Embedded Solutions AG]] - FS Forth-Systeme GmbH was founded in 1983 and was aquired by [[http://www.digi.com/|Digi International]] on March 30, 2005. *[[http://www.xing.com/profile/Klaus_Flesch/|XING "Klaus Flesch"]]. *[[http://www.computerwoche.de/a/forth-systeme-im-aufwind,1161785|ComputerWoche "Forth-Systeme Angelika Flesch: Forth-Systeme im Aufwind"]], 1987. *[[http://www.forth-ev.de/wiki/res/lib/exe/fetch.php/vd-archiv:4d2017-03.pdf|Forth e.V. Wiki "Vierte Dimension 3/2017"]] ( PDF ). *"Im Mikrokontroller–Verleih der Forth–Gesellschaft stehen seit Ende August drei neue Boards zur Verfügung. Den Anfang macht das Novix 4000 EB1 Board. Dieses Board von "Forth–Systeme–Angelika–Flesch" ist eine Euro–Platine mit der Novix–4000P–CPU von Chuck Moore. Das Board wird per cmForth programmiert. Wer schon immer mal einen der ersten Forth-Prozessoren ausprobieren wollte, hat hier die Ge- legenheit". ===== Appropriate OpenDirectory Directory Pages ===== *[[http://www.dmoz.org/Computers/Programming/Languages/Forth/|OpenDirectory "Top: Computers: Programming: Languages: Forth"]]. *[[http://www.dmoz.org/World/Deutsch/Computer/Programmieren/Sprachen/Forth/|OpenDirectory "Top: World: Deutsch: Computer: Programmieren: Sprachen: Forth"]]. *[[http://www.dmoz.org/Computers/Programming/Languages/Forth/Implementations/|OpenDirectory "Top: World: Deutsch: Computer: Programmieren: Sprachen: Forth: Implementations"]]. *[[http://www.dmoz.org/Computers/Programming/Languages/Forth/Implementations/CamelForth/|OpenDirectory "Top: World: Deutsch: Computer: Programmieren: Sprachen: Forth: Implementations: CamelForth"]]. *[[http://www.dmoz.org/Computers/Programming/Languages/Forth/Implementations/figForth/|OpenDirectory "Top: World: Deutsch: Computer: Programmieren: Sprachen: Forth: Implementations: figForth"]]. {{tag>FORTH}}