Info z vývoje: 120 KB zdrojového textu (50 stran), 22 KB hexáč, 8 KB binárka (z toho 3 kila jsou jen hlášky). A přitom to v podstatě ještě nic neumí... :-) |
Parafráze na dotaz z "Vesničky": Co ještě nemám? Hrobku? Ne, rodinnou hrobku máme, takže co ještě nemám? BASIC! Vlastnoručně vytvořený BASIC. V 80. letech minulého století mě fascinovalo nejen to, že si kdekdo stavěl vlastní počítač, ale taky to, že si k němu naprogramoval vlastní BASIC. A tak jsem toužil si ho napsat taky. Jenže léta letěla. Nejprve nebyl ten počítač, pak zkušenosti a nakonec čas. Teď se to nějak sešlo, že vše z toho je, a tak jsem se do toho pustil. Zatím toho můj Picolo BASIC moc neumí, ale učí se rychle :-) |
![]() |
Pikolo BASIC vzniká na "reálném železe" v podobě jediného brouka AT89LP51ED2. Má v sobě vše potřebné: snadno reprogramovatelnou ROM, postačující RAM a sériový kanál. Ale hlavně je to pořád stará dobrá x51, pro kterou bude výsledný kód taky určen. Proto nejsou využívány žádné pokročilé fičury, ale jen a pouze standardní vlastnosti 8051. A jak by se přitom hodil duální datapointer! Vyjímkou je vestavěná EEPROM, do které bude možné "sejvnout" basicovský program, a to i s použitím duálního DPTR. Tato možnost bude v překladu pro obecný 8051 pochopitelně zakázána. Čili budou minimálně 2 verze Picolo BASICU. Verze pro AT89LP51ED2 a verze pro obecný x51. Překlad je řízen nastavením příslušných direktiv překladače. |
![]() |
Předpokládám, že nejvíce budou ohrnovány čumáky nad schopností Picolo BASICu pracovat jen s čísly typu unsigned byte. Čili 8 bitů bez znaménka.
Čili 0-255... Prioritou je vytvoření vlastního běhového prostředí a nikoliv tvorba rutin pro 16 či vícebitovou aritmetiku. Ty se dají dodělat později.
Vím, že existují hotové knihovny pro x51, ale zase: budu si to chtít udělat po svém.
V tuto chvíli se tak jedná o BASIC se dvěma NEJ: 1) je to (snad jen prozatím) BASIC s NEJmenším rozsahem zpracovávaných čísel 2) je to NEJukecanější BASIC pod sluncem Díky dostatku ROM (64KB) se nehodlám nijak omezovat a na rozdíl od originálního Tiny BASICu vypisuji opravdu hodně hlášek. Některé jsou sice určeny jen pro vývoj a ve finálním překladu nebudou, ale i tak toho Picolo BASIC nakecá dost. Hlavně chybové hlášky budou mnohem konkrétnější, než HOW, WHAT a SORRY u Tiny BASICu. A taky bude můj BASIC komunikovat česky, tedy vlastně cesky. Jsme v čechách a já s tímto projektem nemám světové ambice, tak proč ne. Klíčová slova příkazů a funkcí pochopitelně budou anglicky, to je jasňačka:-) |
![]() |
Některé příkazy pro přímý režim jsou určeny jen pro vývoj a pak se uvidí. Buď je ponechám, nebo smažu. Taktéž řada kontrolních výpisů a hlášek je určena jen pro vývoj. Ačkoliv světýlka já rád, zde žádné kontrolní lampičky nepoužívám a vše potřebné píšu na terminál. |
![]() |
Ačkoliv jsem se inspiroval Wangovým Tiny Basicem a z něj vycházejícím (převzatým, ukradeným) SAPI Microbasicem, píšu to celé od začátku znovu a po svém.
Komunikace je přes standardní sériový terminál. V plánu je i přímé připojení PS/2 klávesnice a LCD displeje, ale plánů už bylo...
A proč "frčím" pouze rychlostí 4800 Bd? Tak o tom zase někdy příště...
|