Post Reply 
FORTH for the SHARP PC-E500 (S)
09-16-2021, 05:06 PM
Post: #7
RE: FORTH for the SHARP PC-E500 (S)
(09-16-2021 12:47 PM)Helix Wrote:  I've managed to build a serial cable, and I can transfer BASIC programs between my PC and the Sharp PC-E500S, so it works Smile

But now I'm stuck with the "uuencoded" thing.
I've found two packages related to uuencoding:
http://www.andrewwoods3d.com/pce500/uudecode.zip
https://www.it-pulse.eu/wp-content/uploa...uucode.zip
But they contain several programs, and furthermore they differ between the two packages.
I'm lost at this point. Sad

Do you know which programs to choose, and how to use them?

Congrats on the cable! I'll work on one when I get back.

Your first URL http://www.andrewwoods3d.com/pce500 has HeavyMetalMini (an arcade game). The 12K game is loaded via serial with the following HMMLOAD.BAS bootloader (I've removed some irrelevant parts):

2 REM "HMMLOAD.BAS"22/5/91
3 REM HEAVY METAL MINI LOADER
4 REM &HBB000 - &HBE118
5 REM ALLOCATE RAM WITH: "POKE&BFE03,&1A,&FD,&B,0,&4C,0:CALL&FFFD8"
6 REM TO START: "CALL&BB000"
...
20 *P:OPEN "1200"AS #1:A=&BB000
21 A$="":INPUT #1,A$:PRINT HEX$ A;":";A$:A$=MID$ (A$,7,23)
22 B$=LEFT$ (A$,2): IF LEN B$<2 GOTO 21
23 POKE A,VAL ("&"+B$) :A=A+1
24 A$=MID$ (A$,4,254):GOTO 22


The only difference is that Forth500 unexpanded starts at &B9000 and expanded starts at &B0000. RAM should be reserved with the POKE+CALL as suggested by the REM comments (see Forth500 for the specific POKE). This loader assumes that the uuencoded binary HMMHEX.TXT is sent over serial, see http://www.andrewwoods3d.com/pce500/hmm-uue.html

It looks like the bootloader just quits when serial closes? That's not 100% safe, but should work I suppose. There is also no CLOSE#1. Close first before rerunning.

If you have a 32K RAM card or expanded E500 then saving Forth500 as a RAM file can be handy in case the Forth dictionary gets damaged and you need to reload Forth500 with LOADM. I added more checks to prevent dictionary and stack overflows, but that does not make Forth500 entirely safe against mistakes (like most Forth's). For example, the wrong ! (store) address can damage the dictionary and code base.

Hope this helps.

- Rob

"I count on old friends" -- HP 71B,Prime|Ti VOY200,Nspire CXII CAS|Casio fx-CG50...|Sharp PC-G850,E500,2500,1500,14xx,13xx,12xx...
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
FORTH for the SHARP PC-E500 (S) - Helix - 09-06-2021, 11:41 PM
RE: FORTH for the SHARP PC-E500 (S) - robve - 09-16-2021 05:06 PM



User(s) browsing this thread: 1 Guest(s)