
Installation Grundsystem:

1. Flashen der drei EEPROMS:

\flash\administra\admflash.spin        --> Administra
\flash\bellatrix\vga.spin              --> Bellatrix
\flash\regnatix\propforth.spin         --> Regnatix
  
2. Hostinterface bleibt ab jetzt auf Regnatix stehen. 
Ein Terminalprogramm starten und 9600 Baud auf die 
Schnittstelle vom Hive einstellen. Nach einem Reset 
meldet sich das Propforth im Terminal. Datei 
"system\basics.f" in einem Editor ffnen, 
alles markieren und kopieren. Im Terminal alles 
einfgen. Der Quelltext wird jetzt im Forth compiliert. 

3. Im Terminal das Kommendo "saveforth" eingeben. 
Damit wird das gesamte Forthsystem mit der gerade 
neu compilierten Erweiterungen wieder im EEPROM als 
Image gespeichert. 

Nach einem Reset sollte sich das Forth jetzt komplett mit 
einem Prompt sowohl auf dem angeschlossenen VGA-Monitor, 
als auch mit einer anderen COG im Terminal melden.

Erstellung einer Forth-SDCard:

Im Prinzip kann jede normale FAT16/32 Karte verwendet werden.
Lange Dateinamen werden nicht verwendet, Unterverzeichnisse
sind kein Problem. Es ist sinnvoll, alle Dateien aus dem
Verzeichnis system\sys in ein Verzeichnis sys in der Root
der Karte zu kopieren.

Das Verzeichnis "sys" hat eine besondere Bedeutung: Hier sollten
sich die Tools, Erweiterungen und Bibliotheken befinden. Mit 
dem Kommando "sys name.f" kann aus jedem anderen Verzeichnis 
ohne Wechsel die Datei name.f geladen und compiliert werden.

Aktuelle Tools, Erweiterungen und Bibliotheken fr das sys-
Verzeichnis findet man unter system\sys.    
   
Wichtige Tastencodes:

[ESC]-1 Screen 1, COG 0
[ESC]-2 Screen 2, COG 1
[ESC]-3 Screen 3, COG 2
[ESC]-b Break, Reset der aktuellen COG
[ESC]-r Reset, Neustart Regnatix

Wichtige Kommandos:

load name.f   - Datei laden und comilieren, Ausgabe Screen 3
dload name.f  - wie load, aber Ausgabe aktueller Screen
sys name.f    - Datei aus sys-Verzeichnis laden und compilieren
ls            - Dateiliste
lsl           - Dateiliste- Long-Format
cd name       - in Verzeichniss wechseln
mount         - SD-Card einbinden
unmount       - SD-Card freigeben
words         - Anzeige Wterbuch
mod?          - (tools.mod) Anzeige compilierter Erweiterungen
lib?          - (tools.mod) Anzeige compilierter Bibliotheken
cog?          - (tools.mod) Anzeige COG-Liste
cat name      - (tools.mod) Ausgabe einer Textdatei
less name     - (tools.mod) Zeilenweise Textausgabe
dm?           - (tools.mod) Anzeige der Systemverzeichnisse

Wichtige Dateien:

Die Dateien *.mod und *.lib enthalten ganz normale Forth-
Quelltexte. Damit hat man schnell eine bersicht ber die
grobe Funktion dieser Quellen: Lib's sind halt reine 
Sammlungen von Worten zu einer bestimmten Funktionsgruppe und
MOD's sind mehr oder weniger fertige und abgeschlossene 
Programme. Ein Beispiel:

Die Datei hss.lib enthlt Worte um die HSS-Funktionen von
Administra anzusprechen. Mit diesen Funktionen kann man nun
ein Modul (Programm) wie einen HSS-Soundplayer schreiben.

Im Gegensatz dazu die Datei splay.mod: Mit diesem Modul wird
ein HSS-Soundplayer ins System eingefgt, welcher Funktionen
aus der hss.lib verwendet. 

Die Datei bentigt man aber mehr oder weniger nur zur 
Entwicklung, ein fertiges Modul wie splay.mod enthlt dann 
schon die die entsprechenden HSS-Worte die bentigt werden. 

Die ifnot: ... Anweisung sorgt dabei dafr, dass keine 
Funktionen doppelt im Wrterbuch vorhanden sind. 

*.mod Module, Forth-Erweiterungen fr das System
*.lib Bibliotheken, grundlegende Wortsammlungen
*.adm Administra-Code (z.Bsp. admsid.adm fr SIDCog-Code)
*.bel Bellatrix-Code

basics.f  - (mod:basics) Hive-Core fr PropForth
ari.lib   - (lib:ari) Zustzliche arithmetische Funktionen
cog.lib   - (lib:cog) Zustzliche COG-Funktionen
adm.lib   - (lib:adm) Administra-Chipmanagment-Funktionen
hss.lib   - (lib:hss) Bibliothek fr Hydra-Sound-System
sfx.lib   - (lib:sfx) Soundeffekt-Bibliothek
wav.lib   - (lib:wav) Wave-Soundbibliothek

bel.lib   - (lib:bel) Bellatrix-Chipmanagment-Funktionen
key.lib   - (lib:key) Tastatur-Bibliothek
scr.lib   - (lib:scr) Screen-Bibliothek
sd0.lib   - (lib:sd0) SD-Card-Bibliothek

debug.f   - Ntzliche Worte zur Fehlersuche und Entwicklung
rom.f     - EEPROM-Dateisystem
tools.f   - Ntzliche Tools (cat, less, dm?...)
hplay.f   - HSS-Player
wplay.f   - WAV-Player
splay.f   - SID-Player

Administra-Codedateien im SYS-Verzeichnis:

admled.adm      Testprogramm - HBeat-LED blinken lassen
admsid.adm      SidCog-Version (wird von splay bentigt)
admsys.adm      Standardcode fr ADM mit SD/HSS/WAV
admym.adm       Yamaha-Soundchip-Version
aterm96.adm     Mini-OS fr Administra (Testzwecke)

Reset-Fehlercodes:

0011FFFF - stack overflow
0012FFFF - return stack overflow
0021FFFF - stack underflow
0022FFFF - return stack underflow
8100FFFF - no free cogs
8200FFFF - no free main memory
8400FFFF - fl no free main memory
8500FFFF - no free cog memory
8800FFFF - eeprom write error
9000FFFF - eeprom read error

.err-Fehlercodes:

0    no error
1    fsys unmounted
2    fsys corrupted
3    fsys unsupported
4    not found
5    file not found
6    dir not found
7    file read only
8    end of file
9    end of directory
10   end of root
11   dir is full
12   dir is not empty
13   checksum error
14   reboot error
15   bpb corrupt
16   fsi corrupt
17   dir already exist
18   file already exist
19   out of disk free space
20   disk io error
21   command not found
22   timeout
23   parameter error

Logbuch:

03-04-2011-dr235 Forum-Update 

- Dateistruktur vereinfacht, jetzt muss nur noch PropForth
  geflasht und basics.mod compiliert werden
- Auslagerung diverser Funktionen in getrennte Lib's, welche
  bei Bedarf compiliert werden knne
- Bug in den Wrter zum senden eines Long oder Word an die 
  Slaves zu senden. Korrekte Funktion jetzt getestet
