Update doku
This commit is contained in:
parent
6cfa45140b
commit
614f239fc2
336
README.md
336
README.md
|
@ -1,14 +1,17 @@
|
||||||
INHALT
|
HIVE TriOS
|
||||||
======
|
==========
|
||||||
|
|
||||||
1. Installations-Varianten
|
Beschreibung
|
||||||
2. Installation des Grundsystems
|
------------
|
||||||
3. Regime im Überblick
|
|
||||||
4. Forth im Überblick
|
TriOS ist ein in SPIN geschriebenes Betriebssystem für den HIVE Computer.
|
||||||
|
Für weitere Informationen wird auf die Webseite des Projektes verwiesen:
|
||||||
|
http://hive-project.de
|
||||||
|
|
||||||
|
|
||||||
1. Installations-Varianten
|
|
||||||
==========================
|
Installations-Varianten
|
||||||
|
-----------------------
|
||||||
|
|
||||||
Zur Installation von TriOS auf dem Hive stehen 3 verschiedene Varianten zur
|
Zur Installation von TriOS auf dem Hive stehen 3 verschiedene Varianten zur
|
||||||
Verfügung, welche am Ende aber dasselbe Ergebnis erzielen:
|
Verfügung, welche am Ende aber dasselbe Ergebnis erzielen:
|
||||||
|
@ -37,318 +40,5 @@ Voraussetzung ist, daß sich die Commandline-Version des Compilers (bstc) im
|
||||||
Pfad befindet.
|
Pfad befindet.
|
||||||
Downloadlink BSTC: http://www.fnarfbargle.com/bst/bstc/Latest/
|
Downloadlink BSTC: http://www.fnarfbargle.com/bst/bstc/Latest/
|
||||||
|
|
||||||
|
Genaue Installation-Anleitungen und Einführungen befinden sich im Verzeichnis
|
||||||
2. Installation des Grundsystems:
|
"doku".
|
||||||
=================================
|
|
||||||
|
|
||||||
TriOS kann in zwei Versionen installiert werden: Mit oder ohne Forth als
|
|
||||||
integrierte Programmiersprache. Als Standard wird das System ohne Forth
|
|
||||||
installiert. Die Installation ist so für den Einsteiger einfacher. Möchte
|
|
||||||
man auch PropForth installieren, muß nur ein Basiswortschatz im Forth selbst
|
|
||||||
kompiliert werden.
|
|
||||||
|
|
||||||
|
|
||||||
Installation ohne Forth (Standard):
|
|
||||||
-----------------------------------
|
|
||||||
|
|
||||||
1. Mikrocontroller flashen:
|
|
||||||
|
|
||||||
\flash\administra\admflash.spin --> Administra
|
|
||||||
\flash\bellatrix\belflash.spin --> Bellatrix
|
|
||||||
\flash\regnatix\regflash.spin --> Regnatix
|
|
||||||
|
|
||||||
|
|
||||||
Installation mit Forth:
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
1. Mikrocontroller flashen:
|
|
||||||
|
|
||||||
\flash\administra\admflash.spin --> Administra
|
|
||||||
\flash\bellatrix\belflash.spin --> Bellatrix
|
|
||||||
\flash\regnatix\regforth.spin --> Regnatix
|
|
||||||
|
|
||||||
2. Der Schalter bleibt ab jetzt auf Regnatix stehen. Ein Terminalprogramm (ich
|
|
||||||
verwende Tera Term) starten und 57600 Baud auf die Schnittstelle vom Hive
|
|
||||||
(DIP steht auf Regnatix!) einstellen. Nach einem Reset meldet sich das
|
|
||||||
Propforth im Terminalprogramm auf dem Hostcomputer. Datei "forth\basics.mod"
|
|
||||||
in einem Editor öffnen, alles markieren, kopieren und im Terminal einfügen.
|
|
||||||
Der Quelltext wird jetzt im Forth compiliert.
|
|
||||||
|
|
||||||
3. Im Terminalfenster, also im Forth, dass 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 seinem Prompt sowohl
|
|
||||||
auf dem angeschlossenen VGA-Monitor, als auch im Terminal melden. Im Prinzip
|
|
||||||
benötigen wir nun das Terminalprogramm nicht mehr und können direkt am Hive
|
|
||||||
arbeiten. Später, wenn man in Forth programmiert, ist die vorhandene
|
|
||||||
Terminalschnittstelle aber manchmal sehr nützlich.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Erstellen der 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 "bin\sd-card\" auf die SD-Karte zu kopieren.
|
|
||||||
|
|
||||||
Das Verzeichnis "system" hat eine besondere Bedeutung: Hier sollten sich die
|
|
||||||
Tools, Erweiterungen und Bibliotheken befinden. Im PropForth: Mit dem Kommando
|
|
||||||
"sys name.f" kann aus jedem anderen Verzeichnis ohne Wechsel eine Datei name.f
|
|
||||||
im Verzeichnis System geladen und compiliert werden.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Systemstart:
|
|
||||||
------------
|
|
||||||
|
|
||||||
Beim Systemstart wird immer das Forth aus dem EEPROM gestartet. So kann, wie
|
|
||||||
mit den klassischen Homecomputern, sofort unkompliziert programmiert werden.
|
|
||||||
Neben dem Forth gibt es im TriOS noch ein in Spin programmiertes Betriebssystem,
|
|
||||||
welches sich dem Benutzer durch den Kommandointerpreter Regime präsentiert. Aus
|
|
||||||
dem Forth kann diese mit dem Kommando "regime" gestartet werden. Im Gegenzug
|
|
||||||
kann im laufenden Regime mit dem Kommando "forth" wieder zur integrierten
|
|
||||||
Programmiersprache gewechselt werden.
|
|
||||||
|
|
||||||
Wurde TriOS ohne Forth installiert, wird der Loader aus dem EEPROM gestartet und
|
|
||||||
sofort die Kommandozeile "Regime" aus der Datei reg.sys gestartet.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
3. Regime im Überblick
|
|
||||||
======================
|
|
||||||
|
|
||||||
Da wir ja drei verschiedene Teilsystem in unserem Computer haben, muss Regime
|
|
||||||
wissen, für welchen Chip eine ausführbare Datei bestimmt ist. Den Typ
|
|
||||||
ausführbarer Dateien kann Regime automatisch anhand der Dateinamenserweiterung
|
|
||||||
unterscheiden:
|
|
||||||
|
|
||||||
*.bin Regnatix-Code
|
|
||||||
*.bel Bellatrix-Code
|
|
||||||
*.adm Administra-Code
|
|
||||||
|
|
||||||
Dabei genügt es, den Namen ohne Erweiterung einzugeben. Dennoch kann es
|
|
||||||
vorkommen, das man eine normale Spin-Datei mit einer beliebigen Erweiterung
|
|
||||||
gespeichert hat. Diese Datei kann man dann mit den Kommandos rload, aload oder
|
|
||||||
bload ganz gezielt in einen Chip laden.
|
|
||||||
|
|
||||||
<dateiname> - bin/adm/bel-datei wird gestartet
|
|
||||||
mount - SD-aufwerk mounten
|
|
||||||
unmount - SD-Laufwerk freigeben
|
|
||||||
dir wh - Verzeichnis anzeigen
|
|
||||||
type <sd:fn> - Anzeige einer Textdatei
|
|
||||||
aload <sd:fn> - Administra-Code laden
|
|
||||||
bload <sd:fn> - Bellatrix-Code laden
|
|
||||||
rload <sd:fn> - Regnatix-Code laden
|
|
||||||
del <sd:fn> - Datei löschen
|
|
||||||
cls - Bildschirm löschen
|
|
||||||
free - Anzeige des freien Speichers auf SD-Card
|
|
||||||
attrib <sd:fn> ashr - Dateiattribute ändern
|
|
||||||
cd <sd:dir> - Verzeichnis wechseln
|
|
||||||
mkdir <sd:dir> - Verzeichnis erstellen
|
|
||||||
rename <sd:fn1> <sd:fn2> - datei/verzeichnis umbenennen
|
|
||||||
format <volname> - SD-Laufwerk formatieren
|
|
||||||
reboot - Hive neu starten
|
|
||||||
sysinfo - Systeminformationen
|
|
||||||
ipconfig - Netzwerk-Konfiguration
|
|
||||||
color <0..7> - Farbe wählen
|
|
||||||
cogs - Belegung der COG's anzeigen
|
|
||||||
dmlist - Anzeige der Verzeichnis-Marker
|
|
||||||
dm <r/s/u/a/b/c> - Marker-Verzeichnis wechseln
|
|
||||||
dmset <r/s/u/a/b/c> - Marker setzen
|
|
||||||
dmclr <r/s/u/a/b/c> - Marker löschen
|
|
||||||
forth - Forth starten
|
|
||||||
|
|
||||||
Marker:
|
|
||||||
r - Marker für Root-Verzeichnis
|
|
||||||
s - Marker für System-Verzeichnis
|
|
||||||
u - Marker für User-Verzeichnis
|
|
||||||
a/b/c - Benutzerdefinierte Verzeichnismarker
|
|
||||||
|
|
||||||
Die r, s, u-Marker werden vom System automatisch gesetzt und intern verwendet.
|
|
||||||
|
|
||||||
RAMDISK:
|
|
||||||
|
|
||||||
xload <sd:fn> - Datei von SD-Laufwerk in RAM laden
|
|
||||||
xsave <x:fn> - Datei aus RAM auf SD-Laufwerk speichern
|
|
||||||
xdir - Verzeichnis im RAM anzeigen
|
|
||||||
xrename <x:fn1> <x:fn2> - Datei im RAM umbenennen
|
|
||||||
xdel <x:fn> - Datei im RAM löschen
|
|
||||||
xtype <x:fn> - Textdatei im RAM anzeigen
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
EXTERNE KOMMANDOS:
|
|
||||||
------------------
|
|
||||||
|
|
||||||
Die meisten Kommandozeilentools zeigen mit dem Parameter /? eine Liste der
|
|
||||||
Optionen an.
|
|
||||||
|
|
||||||
sysconf - Systemeinstellungen
|
|
||||||
hplay - HSS-Player
|
|
||||||
wplay - WAV-Player
|
|
||||||
splay - SID-Player
|
|
||||||
yplay - Yamaha-Soundchip-Player
|
|
||||||
sfxtool - HSS-Soundeffekte erstellen
|
|
||||||
|
|
||||||
ftp - FTP-Client
|
|
||||||
irc - IRC Client
|
|
||||||
|
|
||||||
vga.bin - VGA 1024 x 768 Pixel, 64 x 24 Zeichen
|
|
||||||
htext.bin - VGA 1024 x 768 Pixel, 128 x 48 Zeichen
|
|
||||||
tv.bin - TV-Textmodus 40 x 13 Zeichen
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
4. Forth im Überblick:
|
|
||||||
======================
|
|
||||||
|
|
||||||
Einige nützliche Kommandos befinden sich in dem Modul tools.mod. In den meisten
|
|
||||||
Fällen ist es sinnvoll dieses Modul mit der Befehlssequenz
|
|
||||||
"sys tools.mod saveforth" fest im Forth einzubinden.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Wichtige Tastencodes:
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
[ESC]-1 Screen 1, COG 1
|
|
||||||
[ESC]-2 Screen 2, COG 2
|
|
||||||
[ESC]-3 Screen 3, COG 3
|
|
||||||
[ESC]-b Break, Reset der aktuellen COG
|
|
||||||
[ESC]-r Reset, Neustart Regnatix
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Wichtige Kommandos:
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
load <name> - Datei laden und comilieren, Ausgabe Screen 3
|
|
||||||
dload <name> - wie load, aber Ausgabe aktueller Screen
|
|
||||||
sys <name> - 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 Wöterbuch
|
|
||||||
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
|
|
||||||
regime - CLI starten
|
|
||||||
aload <name> - Adminsitra-Code laden
|
|
||||||
bload <name> - Bellatrix-Code laden
|
|
||||||
spin <name> - Spin-Programm starten
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
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 enthält 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 eingefügt, welcher Funktionen aus der hss.lib verwendet.
|
|
||||||
|
|
||||||
Die Datei benötigt man aber mehr oder weniger nur zur Entwicklung, ein fertiges
|
|
||||||
Modul wie splay.mod enthält dann schon die die entsprechenden HSS-Worte die
|
|
||||||
benötigt werden.
|
|
||||||
|
|
||||||
Die ifnot: ... Anweisung sorgt dabei dafür, dass keine Funktionen doppelt in das
|
|
||||||
Wörterbuch compiliert werden. Das ist quasi ein verteiltes und fein granuliertes
|
|
||||||
Konzept analog zu einer DLL. Die Forth-Version funktioniert dabei aber im
|
|
||||||
Gegensatz zu DLL's nicht auf Bibliotheks-, sondern auf Funktionsebene.
|
|
||||||
|
|
||||||
*.mod Module, Forth-Erweiterungen für das System
|
|
||||||
*.lib Bibliotheken, grundlegende Wortsammlungen
|
|
||||||
*.adm Administra-Code (z.Bsp. admsid.adm für SIDCog-Code)
|
|
||||||
*.bel Bellatrix-Code
|
|
||||||
*.bin Spin-Code, im Normalfall zur Ausführung in Regnatix
|
|
||||||
|
|
||||||
basics.f - (mod:basics) Hive-Core für PropForth
|
|
||||||
ari.lib - (lib:ari) Zusätzliche arithmetische Funktionen
|
|
||||||
cog.lib - (lib:cog) Zusätzliche COG-Funktionen
|
|
||||||
adm.lib - (lib:adm) Administra-Chipmanagment-Funktionen
|
|
||||||
hss.lib - (lib:hss) Bibliothek für 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 - Nützliche Worte zur Fehlersuche und Entwicklung
|
|
||||||
rom.f - EEPROM-Dateisystem
|
|
||||||
tools.f - Nützliche 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
|
|
||||||
admnet.adm Netzwerk-Version (wird von ftp und irc benötigt)
|
|
||||||
admsid.adm SidCog-Version (wird von splay benötigt)
|
|
||||||
admsys.adm Standardcode für ADM mit SD/HSS/WAV
|
|
||||||
admym.adm Yamaha-Soundchip-Version
|
|
||||||
aterm96.adm Mini-OS für 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
|
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
Installation einfach (ohne FORTH)
|
||||||
|
=================================
|
||||||
|
|
||||||
|
Mikrocontroller flashen:
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
\flash\administra\admflash.spin --> Administra
|
||||||
|
\flash\bellatrix\belflash.spin --> Bellatrix
|
||||||
|
\flash\regnatix\regflash.spin --> Regnatix
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Erstellen der 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 "bin\sd-card\" auf die SD-Karte zu kopieren.
|
||||||
|
|
||||||
|
Das Verzeichnis "system" hat eine besondere Bedeutung: Hier sollten sich die
|
||||||
|
Tools, Erweiterungen und Bibliotheken befinden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Systemstart:
|
||||||
|
------------
|
||||||
|
|
||||||
|
Aus dem EEPROM wird der Loader gestartet und sofort die Kommandozeile "Regime"
|
||||||
|
aus der Datei reg.sys ausgeführt.
|
|
@ -0,0 +1,52 @@
|
||||||
|
Installation mit FORTH
|
||||||
|
======================
|
||||||
|
|
||||||
|
Grundinstallation:
|
||||||
|
------------------
|
||||||
|
|
||||||
|
1. Mikrocontroller flashen:
|
||||||
|
|
||||||
|
\flash\administra\admflash.spin --> Administra
|
||||||
|
\flash\bellatrix\belflash.spin --> Bellatrix
|
||||||
|
\flash\regnatix\regforth.spin --> Regnatix
|
||||||
|
|
||||||
|
2. Der Schalter bleibt ab jetzt auf Regnatix stehen. Ein Terminalprogramm (ich
|
||||||
|
verwende Tera Term) starten und 57600 Baud auf die Schnittstelle vom Hive
|
||||||
|
(DIP steht auf Regnatix!) einstellen. Nach einem Reset meldet sich das
|
||||||
|
Propforth im Terminalprogramm auf dem Hostcomputer. Datei "forth\basics.mod"
|
||||||
|
in einem Editor öffnen, alles markieren, kopieren und im Terminal einfügen.
|
||||||
|
Der Quelltext wird jetzt im Forth compiliert. Sind alle Erweiterungen
|
||||||
|
compiliert, wird automatisch das Forth in den Flash geschrieben.
|
||||||
|
|
||||||
|
Nach einem automatischen Reset sollte sich das Forth jetzt komplett mit seinem
|
||||||
|
Prompt sowohl auf dem angeschlossenen VGA-Monitor, als auch im Terminal melden.
|
||||||
|
Im Prinzip benötigen wir nun das Terminalprogramm nicht mehr und können direkt
|
||||||
|
am Hive arbeiten. Später, wenn man in Forth programmiert, ist die vorhandene
|
||||||
|
Terminalschnittstelle aber manchmal sehr nützlich.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Erstellen der 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 "bin\sd-card\" auf die SD-Karte zu kopieren.
|
||||||
|
|
||||||
|
Das Verzeichnis "system" hat eine besondere Bedeutung: Hier sollten sich die
|
||||||
|
Tools, Erweiterungen und Bibliotheken befinden. Im PropForth: Mit dem Kommando
|
||||||
|
"sys name.f" kann aus jedem anderen Verzeichnis ohne Wechsel eine Datei name.f
|
||||||
|
im Verzeichnis System geladen und compiliert werden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Systemstart:
|
||||||
|
------------
|
||||||
|
|
||||||
|
Beim Systemstart wird immer das Forth aus dem EEPROM gestartet. So kann, wie
|
||||||
|
mit den klassischen Homecomputern, sofort unkompliziert programmiert werden.
|
||||||
|
Neben dem Forth gibt es im TriOS noch ein in Spin programmiertes Betriebssystem,
|
||||||
|
welches sich dem Benutzer durch den Kommandointerpreter Regime präsentiert. Aus
|
||||||
|
dem Forth kann diese mit dem Kommando "regime" gestartet werden. Im Gegenzug
|
||||||
|
kann im laufenden Regime mit dem Kommando "forth" wieder zur integrierten
|
||||||
|
Programmiersprache gewechselt werden.
|
|
@ -0,0 +1,106 @@
|
||||||
|
3. Regime im Überblick
|
||||||
|
======================
|
||||||
|
|
||||||
|
Da wir ja drei verschiedene Teilsystem in unserem Computer haben, muss Regime
|
||||||
|
wissen, für welchen Chip eine ausführbare Datei bestimmt ist. Den Typ
|
||||||
|
ausführbarer Dateien kann Regime automatisch anhand der Dateinamenserweiterung
|
||||||
|
unterscheiden:
|
||||||
|
|
||||||
|
*.bin Regnatix-Code
|
||||||
|
*.bel Bellatrix-Code
|
||||||
|
*.adm Administra-Code
|
||||||
|
|
||||||
|
Dabei genügt es, den Namen ohne Erweiterung einzugeben. Dennoch kann es
|
||||||
|
vorkommen, das man eine normale Spin-Datei mit einer beliebigen Erweiterung
|
||||||
|
gespeichert hat. Diese Datei kann man dann mit den Kommandos rload, aload oder
|
||||||
|
bload ganz gezielt in einen Chip laden.
|
||||||
|
|
||||||
|
<dateiname> - bin/adm/bel-datei wird gestartet
|
||||||
|
mount - SD-aufwerk mounten
|
||||||
|
unmount - SD-Laufwerk freigeben
|
||||||
|
dir wh - Verzeichnis anzeigen
|
||||||
|
type <sd:fn> - Anzeige einer Textdatei
|
||||||
|
aload <sd:fn> - Administra-Code laden
|
||||||
|
bload <sd:fn> - Bellatrix-Code laden
|
||||||
|
rload <sd:fn> - Regnatix-Code laden
|
||||||
|
del <sd:fn> - Datei löschen
|
||||||
|
cls - Bildschirm löschen
|
||||||
|
free - Anzeige des freien Speichers auf SD-Card
|
||||||
|
attrib <sd:fn> ashr - Dateiattribute ändern
|
||||||
|
cd <sd:dir> - Verzeichnis wechseln
|
||||||
|
mkdir <sd:dir> - Verzeichnis erstellen
|
||||||
|
rename <sd:fn1> <sd:fn2> - datei/verzeichnis umbenennen
|
||||||
|
format <volname> - SD-Laufwerk formatieren
|
||||||
|
reboot - Hive neu starten
|
||||||
|
sysinfo - Systeminformationen
|
||||||
|
color <0..7> - Farbe wählen
|
||||||
|
cogs - Belegung der COG's anzeigen
|
||||||
|
dmlist - Anzeige der Verzeichnis-Marker
|
||||||
|
dm <r/s/u/a/b/c> - Marker-Verzeichnis wechseln
|
||||||
|
dmset <r/s/u/a/b/c> - Marker setzen
|
||||||
|
dmclr <r/s/u/a/b/c> - Marker löschen
|
||||||
|
forth - Forth starten
|
||||||
|
|
||||||
|
Marker:
|
||||||
|
r - Marker für Root-Verzeichnis
|
||||||
|
s - Marker für System-Verzeichnis
|
||||||
|
u - Marker für User-Verzeichnis
|
||||||
|
a/b/c - Benutzerdefinierte Verzeichnismarker
|
||||||
|
|
||||||
|
Die r, s, u-Marker werden vom System automatisch gesetzt und intern verwendet.
|
||||||
|
|
||||||
|
RAMDISK:
|
||||||
|
|
||||||
|
xload <sd:fn> - Datei von SD-Laufwerk in RAM laden
|
||||||
|
xsave <x:fn> - Datei aus RAM auf SD-Laufwerk speichern
|
||||||
|
xdir - Verzeichnis im RAM anzeigen
|
||||||
|
xrename <x:fn1> <x:fn2> - Datei im RAM umbenennen
|
||||||
|
xdel <x:fn> - Datei im RAM löschen
|
||||||
|
xtype <x:fn> - Textdatei im RAM anzeigen
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
EXTERNE KOMMANDOS:
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Die meisten Kommandozeilentools zeigen mit dem Parameter /? eine Liste der
|
||||||
|
Optionen an.
|
||||||
|
|
||||||
|
beltest - Testprogramm für Bellatrix-Funktionen
|
||||||
|
charmap - Ausgabe des aktuellen nutzbaren Zeichensatzes
|
||||||
|
eram - Debugtool für eRAM/Ramdisk
|
||||||
|
flash - Flash-Tool für EEProms > 32 KByte
|
||||||
|
fm - [F]ile [M]anager
|
||||||
|
fterm - minimalstes Terminal für PropForth-Experimente
|
||||||
|
ftp - FTP-Downloadprogramm
|
||||||
|
g0test - Testprogramm der Grafikmodus 0 Funktionen (TV)
|
||||||
|
hplay - HSS-Player
|
||||||
|
ipconfig - Setup für Netzwerkparameter (IP/GW usw.)
|
||||||
|
irc - IRC-Client
|
||||||
|
keycode - Tastaturcodes anzeigen
|
||||||
|
m - Startcode für mental unter TriOS (sofern installiert)
|
||||||
|
man - Anzeige von Manual-Pages
|
||||||
|
perplex - PlexBus-Tool
|
||||||
|
ramtest - eRAM Testprogramm
|
||||||
|
rom - startet ein Image aus dem EEPROM > 32 KByte
|
||||||
|
sfxtool - HSS-Soundeffekte erstellen
|
||||||
|
splay - SID-Player
|
||||||
|
sysconf - Systemeinstellungen
|
||||||
|
tapecut - Tool um eine Containerdatei (Tape) für mental zu erzeugen
|
||||||
|
time - Zeit/Datum anzeigen bzw. im RTC setzen
|
||||||
|
websrv - Webserver (Demo)
|
||||||
|
wplay - WAV-Player
|
||||||
|
yplay - Yamaha-Soundchip-Player
|
||||||
|
|
||||||
|
Bellatrix-Codes:
|
||||||
|
|
||||||
|
vga - VGA 1024 x 768 Pixel, 64 x 24 Zeichen
|
||||||
|
htext - VGA 1024 x 768 Pixel, 128 x 48 Zeichen
|
||||||
|
tv - TV-Textmodus 40 x 13 Zeichen
|
||||||
|
|
||||||
|
Administra-Codes:
|
||||||
|
|
||||||
|
admay - Yamaha-Soundchip-Emulation
|
||||||
|
admnet - LAN + HSS-Light-Sound
|
||||||
|
admsid - SID-Chip-Emulation
|
||||||
|
admsys - HSS/WAV-Sound (Defaultcode)
|
|
@ -0,0 +1,149 @@
|
||||||
|
Forth im Überblick:
|
||||||
|
===================
|
||||||
|
|
||||||
|
Einige nützliche Kommandos befinden sich in dem Modul tools.mod. In den meisten
|
||||||
|
Fällen ist es sinnvoll dieses Modul mit der Befehlssequenz
|
||||||
|
"sys tools.mod saveforth" fest im Forth einzubinden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Wichtige Tastencodes:
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
[ESC]-1 Screen 1, COG 1
|
||||||
|
[ESC]-2 Screen 2, COG 2
|
||||||
|
[ESC]-3 Screen 3, COG 3
|
||||||
|
[ESC]-b Break, Reset der aktuellen COG
|
||||||
|
[ESC]-r Reset, Neustart Regnatix
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Wichtige Kommandos:
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
load <name> - Datei laden und comilieren, Ausgabe Screen 3
|
||||||
|
dload <name> - wie load, aber Ausgabe aktueller Screen
|
||||||
|
sys <name> - 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 Wöterbuch
|
||||||
|
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
|
||||||
|
regime - CLI starten
|
||||||
|
aload <name> - Adminsitra-Code laden
|
||||||
|
bload <name> - Bellatrix-Code laden
|
||||||
|
spin <name> - Spin-Programm starten
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
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 enthält 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 eingefügt, welcher Funktionen aus der hss.lib verwendet.
|
||||||
|
|
||||||
|
Die Datei benötigt man aber mehr oder weniger nur zur Entwicklung, ein fertiges
|
||||||
|
Modul wie splay.mod enthält dann schon die die entsprechenden HSS-Worte die
|
||||||
|
benötigt werden.
|
||||||
|
|
||||||
|
Die ifnot: ... Anweisung sorgt dabei dafür, dass keine Funktionen doppelt in das
|
||||||
|
Wörterbuch compiliert werden. Das ist quasi ein verteiltes und fein granuliertes
|
||||||
|
Konzept analog zu einer DLL. Die Forth-Version funktioniert dabei aber im
|
||||||
|
Gegensatz zu DLL's nicht auf Bibliotheks-, sondern auf Funktionsebene.
|
||||||
|
|
||||||
|
*.mod Module, Forth-Erweiterungen für das System
|
||||||
|
*.lib Bibliotheken, grundlegende Wortsammlungen
|
||||||
|
*.adm Administra-Code (z.Bsp. admsid.adm für SIDCog-Code)
|
||||||
|
*.bel Bellatrix-Code
|
||||||
|
*.bin Spin-Code, im Normalfall zur Ausführung in Regnatix
|
||||||
|
|
||||||
|
basics.f - (mod:basics) Hive-Core für PropForth
|
||||||
|
ari.lib - (lib:ari) Zusätzliche arithmetische Funktionen
|
||||||
|
cog.lib - (lib:cog) Zusätzliche COG-Funktionen
|
||||||
|
adm.lib - (lib:adm) Administra-Chipmanagment-Funktionen
|
||||||
|
hss.lib - (lib:hss) Bibliothek für 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 - Nützliche Worte zur Fehlersuche und Entwicklung
|
||||||
|
rom.f - EEPROM-Dateisystem
|
||||||
|
tools.f - Nützliche 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
|
||||||
|
admnet.adm Netzwerk-Version (wird von ftp und irc benötigt)
|
||||||
|
admsid.adm SidCog-Version (wird von splay benötigt)
|
||||||
|
admsys.adm Standardcode für ADM mit SD/HSS/WAV
|
||||||
|
admym.adm Yamaha-Soundchip-Version
|
||||||
|
aterm96.adm Mini-OS für 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
|
|
@ -10,6 +10,7 @@ Funktionen. Als erste Anwendungen sind enthalten:
|
||||||
- Ein FTP-Client, welcher Dateien von einem FTP-Server downloaden und in der
|
- Ein FTP-Client, welcher Dateien von einem FTP-Server downloaden und in der
|
||||||
RAM-Disk im eRAM oder auf SD-Card abspeichern kann.
|
RAM-Disk im eRAM oder auf SD-Card abspeichern kann.
|
||||||
- Ein vollständiger IRC-Client
|
- Ein vollständiger IRC-Client
|
||||||
|
- Die DEmo-Version eines Webservers
|
||||||
Zukünftige Erweiterungen, wie die Integration in Regime und direktes Starten
|
Zukünftige Erweiterungen, wie die Integration in Regime und direktes Starten
|
||||||
von Programmen aus dem Netzwerk sind geplant.
|
von Programmen aus dem Netzwerk sind geplant.
|
||||||
|
|
||||||
|
@ -125,7 +126,18 @@ abgespeichert. Von dort könnte sie direkt gestartet werden.
|
||||||
IRC-Client
|
IRC-Client
|
||||||
----------
|
----------
|
||||||
|
|
||||||
siehe IRC-CLIENT.md
|
siehe [6-IRC-CLIENT.md]
|
||||||
|
|
||||||
|
Webserver
|
||||||
|
---------
|
||||||
|
|
||||||
|
Der Webserver wird aus Regime ohne Parameter gestartet:
|
||||||
|
|
||||||
|
websrv
|
||||||
|
|
||||||
|
Damit ist der Hive mittels Browser unter seiter mittels ipconfig eingestellten
|
||||||
|
Adresse erreichbar. Zur Demonstration wird die Hive-Id und eine sich ständig
|
||||||
|
ändernde Zufallszahl angezeigt.
|
||||||
|
|
||||||
|
|
||||||
Schlußbemerkung
|
Schlußbemerkung
|
Binary file not shown.
After Width: | Height: | Size: 29 KiB |
|
@ -1,20 +1,22 @@
|
||||||
r57 - xx-xx-xxxx-joergd
|
r57-nw1.5 - 23-07-2014-joergd
|
||||||
=======================
|
=============================
|
||||||
|
|
||||||
Allgemein:
|
Allgemein:
|
||||||
- alle Spin-Dateien verwenden einheitlich UTF8-Kodierung und ein Zeilenende
|
- alle Spin-Dateien verwenden einheitlich UTF8-Kodierung und ein Zeilenende
|
||||||
mit Linefeed (LF)
|
mit Linefeed (LF)
|
||||||
|
|
||||||
Administra:
|
Administra:
|
||||||
- Netzwerk-fähig
|
|
||||||
- nur eine Source-Datei für alle Binaries, Funktionsauswahl über Defines
|
- nur eine Source-Datei für alle Binaries, Funktionsauswahl über Defines
|
||||||
- Plexbus, DCF77 und Bluetooth aus Basic/Plexus hinzugefügt
|
- DCF77 und Bluetooth aus Basic/Plexus hinzugefügt
|
||||||
|
|
||||||
Netzwerk-Clients:
|
Netzwerk-Clients:
|
||||||
- ipconfig
|
- ipconfig
|
||||||
- FTP-Client
|
- FTP-Client
|
||||||
- IRC-Client
|
- IRC-Client
|
||||||
|
|
||||||
|
Netzwerk-Server:
|
||||||
|
- Webserver (Demo)
|
||||||
|
|
||||||
fm, man:
|
fm, man:
|
||||||
- Textdateien mit unterschiedlichem Zeilenende (CR, LF) werden unterstützt
|
- Textdateien mit unterschiedlichem Zeilenende (CR, LF) werden unterstützt
|
||||||
|
|
||||||
|
@ -26,22 +28,67 @@ Make-Scripts:
|
||||||
- Linux-Version (make.sh)
|
- Linux-Version (make.sh)
|
||||||
- Erstellung verschiedener Anministra-Binaries per Defines
|
- Erstellung verschiedener Anministra-Binaries per Defines
|
||||||
- Erstellung beider Regime-Flash-Versionen (mit und ohne Forth)
|
- Erstellung beider Regime-Flash-Versionen (mit und ohne Forth)
|
||||||
|
- Release-Script
|
||||||
|
|
||||||
|
|
||||||
|
r57 - 21-06-2014-dr235
|
||||||
|
======================
|
||||||
|
|
||||||
|
admflash:
|
||||||
|
- Plexbusroutinen eingefügt
|
||||||
|
- sd_del - Heartbeat-Sound angepasst
|
||||||
|
|
||||||
|
belflash:
|
||||||
|
- per Compilerflag wählbare Monitorsettings eingefügt (57/60hz)
|
||||||
|
|
||||||
|
basic.mod (propforth):
|
||||||
|
- Bei der Installation von TriOS mit Forth muss basic.mod nur noch eingefügt
|
||||||
|
werden, damit wird automatisch geflasht und neu gestartet
|
||||||
|
|
||||||
|
lib:
|
||||||
|
- adm-enc28j60 eingefügt, Treiber Netzwerkchip
|
||||||
|
- adm-socket eingefügt, Netzwerksocket
|
||||||
|
- adm-plx Code ausgebaut
|
||||||
|
- bel-vga Monitorsettings
|
||||||
|
- glob-con Plexbus/LAN-Konstanten eingefügt
|
||||||
|
- glob-led-engine - neue lib für hbeat-led-pwm
|
||||||
|
- gui-dlbox - Redraw beschleunigt
|
||||||
|
- gui-wbox - Warnbox ist jetzt auch mit tab & esc bedienbar
|
||||||
|
- m-glob-con - konstanten für sound und plexbus eingefügt
|
||||||
|
|
||||||
|
reg-ios:
|
||||||
|
- Testfunktion für RTC
|
||||||
|
- LAN-Funktionen eingefügt
|
||||||
|
- Plexbus Funktionen eingefügt
|
||||||
|
- printblk - Stringausgabe mit Längenangabe
|
||||||
|
|
||||||
|
system/administra:
|
||||||
|
- admnet eingefügt
|
||||||
|
|
||||||
|
system/regnatix:
|
||||||
|
- fm - Optimierungen und Detailverbesserungen
|
||||||
|
- perplex - Plexbus Tool zugefügt
|
||||||
|
- regime - sysinfo zeigt jetzt auch Devices am Plexbus an
|
||||||
|
- man - Systemklänge angepasst, damit nicht ständig der Heartbeat beim Lesen
|
||||||
|
läuft
|
||||||
|
- ramtest - Anpassungen Maske/Farben
|
||||||
|
|
||||||
|
Dokumentation:
|
||||||
|
- Neustrukturierung der Texte
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
r56 - 11-05-2013-dr235
|
r56 - 11-05-2013-dr235
|
||||||
======================
|
======================
|
||||||
|
|
||||||
und weiter gehts mit dem Frühjahresputz:
|
und weiter gehts mit dem Frühjahresputz:
|
||||||
|
|
||||||
- umstellung Administra-Codes (admflash, admay, admsid) auf externe
|
- umstellung Administra-Codes (admflash, admay, admsid) auf externe
|
||||||
Konstantendefinitionen
|
Konstantendefinitionen
|
||||||
|
|
||||||
belflash:
|
belflash:
|
||||||
|
|
||||||
- fehler im loader behoben
|
- fehler im loader behoben
|
||||||
|
|
||||||
lib:
|
lib:
|
||||||
|
|
||||||
- gui-objekte für textoberfläche eingefügt:
|
- gui-objekte für textoberfläche eingefügt:
|
||||||
|
|
||||||
gui-dlbox - Listenbox für Dateien
|
gui-dlbox - Listenbox für Dateien
|
||||||
|
@ -50,7 +97,6 @@ lib:
|
||||||
gui-wbox - Warnbox mit Auswahloptionen
|
gui-wbox - Warnbox mit Auswahloptionen
|
||||||
|
|
||||||
system/regnatix:
|
system/regnatix:
|
||||||
|
|
||||||
- Filemanager fm zugefügt
|
- Filemanager fm zugefügt
|
||||||
- Mental-Loader m zugefügt
|
- Mental-Loader m zugefügt
|
||||||
- Tool zum erstellen von tapes (mental-containerdateien) zugefügt
|
- Tool zum erstellen von tapes (mental-containerdateien) zugefügt
|
||||||
|
@ -58,7 +104,6 @@ system/regnatix:
|
||||||
- yplay: Konstanten ausgelagert
|
- yplay: Konstanten ausgelagert
|
||||||
|
|
||||||
system/sonstiges:
|
system/sonstiges:
|
||||||
|
|
||||||
- Manual zugefügt: error, fm
|
- Manual zugefügt: error, fm
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
# Definitionen
|
# Definitionen
|
||||||
VERSION="57"
|
VERSION="57-Network-1.5"
|
||||||
|
|
||||||
# Pfade
|
# Pfade
|
||||||
ARCHIV="HIVE-TriOS-R${VERSION}"
|
ARCHIV="HIVE-TriOS-R${VERSION}"
|
||||||
|
@ -23,8 +23,9 @@ ${MAKE}
|
||||||
# ----------------------------------------------------------------
|
# ----------------------------------------------------------------
|
||||||
# Archive erstellen
|
# Archive erstellen
|
||||||
|
|
||||||
mkdir .tmp
|
mkdir -p .tmp/doku
|
||||||
for file in *.md ; do cp "$file" .tmp/"${file/.md}".txt ; done
|
for file in *.md ; do cp "$file" .tmp/"${file/.md}".txt ; done
|
||||||
|
for file in doku/*.md ; do cp "$file" .tmp/"${file/.md}".txt ; done
|
||||||
cd .tmp
|
cd .tmp
|
||||||
zip -r9 ../../${ARCHIV}-bin.zip *
|
zip -r9 ../../${ARCHIV}-bin.zip *
|
||||||
zip -r9 ../../${ARCHIV}-src.zip *
|
zip -r9 ../../${ARCHIV}-src.zip *
|
||||||
|
|
Loading…
Reference in New Issue