Tags:
view all tags
%DASHBOARD{ section="dashboard_start" }% %DASHBOARD{ section="banner" image="%PUBURLPATH%/Cosmac/RaspiElf/raspi-elfmemcard-s.jpg" title="Forth for the Membership Card" titlestyle="color:#F00000;" }% %DASHBOARD{ section="box_start" title="Intro" width="485" height="200"}% <cite> Computers are machines just like the marionette. They must be told exactly what to do, in specific language. And so we need a language which possesses two seemingly opposite traits: On the one hand, it must be precise in its meaning to the computer, conveying all the information that the computer needs to know to perform the operation. On the other hand, it must be simple and easy-to-use by the programmer. </cite> From chapter "Introduction for Beginners", Leo Brodie, Starting FORTH https://www.forth.com/starting-forth/ %DASHBOARD{ section="box_end" }% %DASHBOARD{ section="box_start" title="Contents" width="460" height="200"}% %TOC% %DASHBOARD{ section="box_end" }% %DASHBOARD{ section="box_start" width="992" height="600" }% ---+ rcforth and IDIOT Monitor for RaspiElf (Membership Card) Mark Abene made FORTH work on the Membership Card. $ forth.hex: Modified version of Mike Riley's rcforth, ROM version. Changed to work with my modified version of IDIOT. Loads in at 0500h. You can get it from the [[https://groups.yahoo.com/neo/groups/cosmacelf/files/Mark%20Abene/forth.hex][COSMAC ELF yahoo group]]. $ idiot_new.hex: New version of IDIOT with SCRT routines, along with TYPE, MSG, READ, and INPUT routines for basic console I/O. Loads in at 0000h. You can get it from the [[https://groups.yahoo.com/neo/groups/cosmacelf/files/Mark%20Abene/idiot_new.hex][COSMAC ELF yahoo group]]. For details see http://www.retrotechnology.com/memship/mship_idiot.html Concatenated this two files as mc-forth.hex and convert it to a binary file: <pre> pi@cosmac:~/elf/forth $ <b>cat idiot_new_qhi.hex forth.hex > mc-forth.hex</b> pi@cosmac:~/elf/forth $ <b>hex2bin mc-forth.hex</b> hex2bin v2.5, Copyright (C) 2017 Jacques Pelletier & contributors Allocate_Memory_and_Rewind: Lowest address: 00000000 Highest address: 00001633 Starting address: 00000000 Max Length: 5684 Binary file start = 00000000 Records start = 00000000 Highest address = 00001633 Pad Byte = FF pi@cosmac:~/elf/forth $ ls -l insgesamt 40 -rw-r--r-- 1 pi pi 12132 Jan 13 12:36 forth.hex -rw-r--r-- 1 pi pi 2890 Jan 13 12:36 idiot_new.hex -rw-r--r-- 1 pi pi 5684 Jan 13 12:41 mc-forth.bin -rw-r--r-- 1 pi pi 15022 Jan 13 12:36 mc-forth.hex</pre> </pre> Now upload and start mc-forth: <pre> pi@cosmac:~/elf/RaspiElf/chase $ <b>bin2elf -w -r mc-forth.bin</b> 0x1634 bytes written </pre> and start the terminal emulator (console): <pre> pi@cosmac:~/elf/RaspiElf/chase $ <b>microcom -s 2400</b> </pre> The Q/EF3 LED is orange, that means EF3 is inverted. %DASHBOARD{ section="box_end" }% %DASHBOARD{ section="box_start" width="992" height="400" }% ---+ Mass storage ---++ Serial Communication by Input/Output Ports (switches and LEDs) Another solution could be to use part of the Membership Card's input/output ports (Switches/LEDs). e.g. Serial Peripheral Interface, MSC is the SPI master, the host is the slave: <verbatim> CLK MSC ->- host MOSI MSC ->- host MISO MSC -<- host SS MSC ->- host or other peripherals (optional) </verbatim> You loose two LEDs and one switch. ---+++ Serial EEPROM e.g. [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-8832C-SEEPROM-AT25M02-Datasheet.pdf][AT25M02]] SPI EEPROM 2Mbit (256 !KiB) ---+++ Raspberry emulating SPI EEPROM On RaspiElf switches/LEDs are already connected to Raspi's GPIOs. No need for additional hardware. ---++ Kermit/ZModem What about using KERMIT or ZMODEM protocol for the file transfer and use the file system on the host? No need to add additional hardware (SD-card is anyway to modern ;-) You could use an old CP/M or even a PDP11 as host. https://github.com/utoh/pygmy-forth/blob/master/extras/kermit/pfkerm.doc %DASHBOARD{ section="box_end" }% %DASHBOARD{ section="box_start" width="992" height="400" }% ---+ Spare Time Gizmos ELF2K ROM for RaspiElf http://www.retrotechnology.com/memship/elf2k_mship.html <pre> pi@cosmac:~/elf/elf2k $ <b>cp v88.hex v88.hex.org</b> pi@cosmac:~/elf/elf2k $ <b>patch v88.hex v88-mc.patch</b> pi@cosmac:~/elf/elf2k $ <b>hex2bin v88.hex</b> hex2bin v2.5, Copyright (C) 2017 Jacques Pelletier & contributors Allocate_Memory_and_Rewind: Lowest address: 00000000 Highest address: 00007FFF Starting address: 00000000 Max Length: 32768 Binary file start = 00000000 Records start = 00000000 Highest address = 00007FFF Pad Byte = FF pi@cosmac:~/elf/elf2k $ <b>bin2elf -s 8000 v88.bin</b> 0x8000 bytes written pi@cosmac:~/elf/elf2k $ <b>bin2elf -w -r LBR_8000.bin</b> 0x0003 bytes written pi@cosmac:~/elf/elf2k $ </pre> But there is "Post Code 97" -> EPROM checksum wrong %DASHBOARD{ section="box_end" }% %DASHBOARD{ section="dashboard_end" }% -- %USERSIG{PeterSchmid - 2019-01-13}% ---++!! Comments
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
patch
v88-msc.patch
r1
manage
0.5 K
2019-01-13 - 14:53
PeterSchmid
Edit
|
Attach
|
Watch
|
P
rint version
|
H
istory
:
r25
|
r6
<
r5
<
r4
<
r3
|
B
acklinks
|
V
iew topic
|
Raw edit
|
More topic actions...
Topic revision: r4 - 2019-01-14
-
PeterSchmid
Home
Site map
Cosmac web
MRR web
MecrispCube web
SuperRandonnee web
TWiki web
Ursula web
Velo web
Cosmac Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Edit
Attach
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback