Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
documentations:basic_keywords [2015/02/28 18:08] – external edit 127.0.0.1documentations:basic_keywords [2015/03/14 09:04] – [Lines] pulkomandy
Line 1: Line 1:
 +====== BASIC file format ======
 +
 +===== Header =====
 +
 +BASIC sources aren't stored in plain ASCII. To allow faster loading and parsing, they are stored in bytecode format. The file is in standard DECB format, with a single block of type 0xFF. Since internal structures use absolute addresses, it is important to keep that header to know the loading address of the BASIC program.
 +
 +^Offset^Description^
 +|0|File type = 0xFF|
 +|1|File size|
 +|3|Load address|
 +
 +===== Lines =====
 +
 +A BASIC program is a packed linked list of program lines.
 +
 +^Offset^Description^
 +|0|Address of next line|
 +|2|Line number in hex|
 +|4|NULL-terminated line data|
 +
 +The end of the listing is marked with a NULL next line pointer.
 +
 +The line data is a mix of tokens and ASCII characters. The tokens are used to encode all the keywords and functions, but everything else (numbers, strings, comments) is stored in ASCII.
 +====== Keyword and token list ======
 +
 ^Keyword^Description^ ^Keyword^Description^
 |''?''|Alias to ''PRINT''| |''?''|Alias to ''PRINT''|
documentations/basic_keywords.txt · Last modified: 2015/03/15 07:41 by pulkomandy
CC0 1.0 Universal
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0