hpr4497 :: fixing 328eforth
a summary of making 328eforth useful
Hosted by Brian-in-Ohio on Tuesday, 2025-10-28 is flagged as Clean and is released under a CC-BY-SA license.
forth, arduino, slackware, emacs.
(Be the first).
Listen in ogg,
opus,
or mp3 format. Play now:
Duration: 00:18:45
Download the transcription and
subtitles.
Arduino and related devices.
In this series various contributors talk about how to use and program Arduino single-board microcontrollers and related devices.
See the Wikipedia article
https://en.wikipedia.org/wiki/List_of_Arduino_boards_and_compatible_systems for details of the range of devices.
Table of Contents
─────────────────
-
greetings
-
links to software
-
hardware
-
install
-
check it works
-
now the fix
-
outro
0 greetings
═══════════════════
continuation from episode 4388, review of the book the Arduino controlled by eforth by dr chen-hanson ting
1 links to software
═══════════════════
https://github.com/PeterForth/DR-TING-OFFETE-SVFIG-MIRROR, 328eforth source code
https://github.com/Ro5bert/avra, opensource assembler
https://www.engbedded.com/fusecalc/, configuration fuse calculator
https://github.com/avrdudes/avrdude, flashing software
https://github.com/oh2aun/flashforth, terminal shell programs
2 hardware
══════════
programmer, avrisp2 recommended, build your own
https://www.hackerpublicradio.org/eps/hpr2799/index.html
Arduino UNO R3, Arduino Nano
3 install
═════════
download 2159_328eforth.zip unzip that file then cd into it
build assembler file, avra 328eforth220.asm
50+ warnings that avra generates because it pads out the words
with null characters in order to get the write size for each word
an over view of whats going on in the build process
flashing process from the book,
avrdude -p m328p -c avrisp2 -e -U flash:w:328eforth220.hex:i -U lfuse:w:0xff:m -U hfuse:w:0xd8:m -U efuse:w:0xfd:m
what i use,
avrdude -p m328p -c avrisp2 -e -U flash:w:328eforth220.hex:i -U lfuse:w:0xe2:m -U hfuse:w:0xd8:m -U efuse:w:0xfd:m
4 check it works
════════════════
open terminal and plug in board, or reset board you should see,
328eforth v2.20 if you hit the return key you'll get an ok
5 now the fix
═════════════
clues from turnkey
flush+
: flush+ ( -- )
context @ context i!
cp @ cp i!
dp @ dp i!
last @ last i!
flush
;
\ flush+ at the terminal prompt saves words,updates the memory pointers
\ saving words across reboots
now you can save newly defined words across reboots
6 outro
═══════
You're currently going through a difficult transition period called, "Life."