[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Customizing EHBASIC with ProDOS-8 and PDOS-RDOS



A couple weeks ago I started to do a serious port of EHBASIC to the Apple,
and attempted to graft PDOS-RDOS load/save code into it. (I had successfully
done so with another BASIC interpreter, nicknamed RBASIC, which I derived
from the Tangerine Microtan and which was very closely related to Applesoft;
EHBASIC is somewhat different under the hood.)

I think the problem isn't so much that I don't understand ProDOS (which I
don't, although I have Beneath Apple ProDOS), or that I don't understand
PDOS-RDOS (which I don't, although I have a basic jist of how it works), but
that I don't understand EHBASIC.  I think my understanding of how it handles
strings isn't right and that's why LOAD and SAVE aren't working.

My goal, beyond what I have already done (i.e., added almost all of the
FPBASIC extensions to EHBASIC), is to add, at a minimum, LOAD, SAVE, BLOAD,
BSAVE, PREFIX, CAT/CATALOG commands to EHBASIC.  (LOAD and SAVE are
partially implemented but do not work; they will always report a syntax
error from ProDOS-8.)

The current code organizes at $8000, and provides 30K-1B for user programs,
which is just about 5.6K less than BASIC.SYSTEM.  It is organized roughly
thus -

$8000-8002 jump instruction into the init code (i.e., past the rest of
ehbasic proper)
$8003-A8CC original ehbasic code and patches necessary for the remainder of
the code to work.
$A8CD-A8E1 message required to be in modified binaries.
$A8E2-A939 initialization code.
$A93A-A9D1 text/GR extensions (i.e., hacked FPBASIC source).
$A9D2-A9DE "BYE" command.
$A9DF-AC18 HGR extensions. (i.e., hacked FPBASIC source).
$AC19-AED3 additional ProDOS extensions (i.e., poorly hacked PDOS-RDOS
source).

(Note that addresses are based on the current source code and will change if
further additions are applied.)

http://usotsuki.info/eh210p8_alpha.zip

-uso.