Hey Steve,
A minor edit to your summary. For the hidden lines, you don't need to
avoid codes < 32 decimal, other than 00h, quote and comma as identified,
though they are harder to edit if you do use codes < 32.
Ken
On 6/5/18 4:31 AM, Stephen Adolph wrote:
so, As a summary, I think this is what is new here:
* Ken has demonstrated that XIP ML can be embedded in a basic program
that can run anywhere
* John has illuminated the fact that there are hidden basic lines
* by using hidden lines, one can create a very compact hybrid ML/BASIC
program that can safely be edited in BASIC
* hidden lines can be executed in BASIC or not
*****if not executed then RAW ML can be embedded - avoid code 00
*****if executed
***********hide the ML in strings - avoid " and codes <32 decimal
***********hide the ML in data structures - avoid comma, and <32 decimal
We've already had Basic with embedded ML, we've just never had it with
next to no overhead - both in time and memory - and with the ability
to run in place WITHOUT absolute addressing.
On Tue, Jun 5, 2018 at 6:58 AM, Ken Pettit <[email protected]
<mailto:[email protected]>> wrote:
Ahh, I see! Okay, then put just a small DATA statement on the
first line:
65531 DATA a:ML code here
65531 ML code here
65531 and here...
Then "10 READ A$" will give you the address of "a" in the DATA
statement, and it only consumes 3 bytes (DATA token, 'a' and ':'),
plus the PEEK magic to get access to the address.
Ken
On 6/5/18 3:53 AM, Stephen Adolph wrote:
sorry I was thinking just to have the RAW ML in the line. no
Data, no string.
65531 m-98&"lkj3
so long as you never execute this code line in BASIC, I
believe it is fine. you just have to find the first byte of code.