German Amiga Community Foren-Übersicht German Amiga Community
The new home for all Amiga Users out there !
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin   Chat 

Auto-Boot zwischen OS 1.3, 2.0 und 3.1

 
Neues Thema eröffnen   Neue Antwort erstellen    German Amiga Community Foren-Übersicht -> Amiga Wiki
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Kris
Gast





BeitragVerfasst am: Mo, 26.03.2007 13:53    Titel: Auto-Boot zwischen OS 1.3, 2.0 und 3.1 Antworten mit Zitat

Auf vielfachen Wunsch hat JOSH anfangen ein Wiki zu schreiben wie es nun funktioniert das man nach dem Einbau einer Umschaltplatine von ein und der selben Festplatte, bzw. Partition die jeweils dazu gehörige Workbench automatisch booten lassen kann.

Gleich vorweg; dieses Wiki beschreibt das Auto-Booten zwischen OS 1.3, 2.0 und 3.1
D.h. die Festplatte muß OFS formatiert sein. Sollte nur zwischen OS 2.x und 3.x gebootet werden, kann die Festplatte auch FFS formatiert sein.
Weiterhin geht diese Beschreibung von nur einer einzigen Festplatte aus, welche den Namen DH0: trägt.

Um uns geich ins Getümmel zu stürzen formatieren wir also zunächst die Festplatte, bzw. die entsprechende Partition auf der wir das ganze installieren wollen.
Wichtig hierbei ist, daß diese die Größe von 1GB, besser eher so um die 900MB nicht überschreitet, da das OFS mit größeren Werten nicht klar kommt.

Ist dies geschehen legen wir zu aller erst mal drei Verzeichnisse an, derer wir die folgenden Namen (und natürlich ohne die Anführungszeichen) geben: "1.3", "2.0" und "3.1"

Danach nehmen wir die Workbenchdiskette 1.3 zu Hand. Die dort enthaltenen Daten müßen nun allesamt ins Hauptverzeichnis der Festplatte kopiert werden. Dazu benutzt man entweder einen Dateimanager a'la DOpus, DiskMaster oder ähnliches, oder man ärgert sich mit der Shell herum.
Ist man bei der Installation nicht gerade unter Kickstart 1.3 unterwegs, bleibt auch noch die Alternative das Diskpiktogramm der WB 1.3 zu öffnen und im Pulldown-Menü der Workbench im Reiter Fenster (bzw. Window) -> Anzeigen (Show) -> Alle Dateien (all Files) aufzurufen. Dann müssen alle Dateien ausgewählt, bei gedrückt gehaltener Shift-Taste auf unsere Festplatte gezogen werden und dann loslassen. Dann werden alle auf der Disk befindlichen Daten in da Hauptverzeichnis kopiert.

Das selbe machen wir nun noch einmal. Allerdings in unser angelegtes Verzeichnis "1.3".
Dann nehmen wir unsere 2.0er Disketten und kopieren deren Inhalt in das Verzeichnis "2.0". Abschließend den Inhalt der Disketten der Workbench 3.1 in das angelegte Verzeichnis "3.1" kopieren.

Dann kommt der eigentliche Teil, den es zu verstehen gilt. Es werden verschiedene Startup-Sequenzen (im folgenden SS genannt) in das S-Verzeichnis im Hauptverzeichnis der Festplatte kopiert (also ins DH0:s). Die eigentliche SS beinhaltet Versionsabfragen, mittels derer es möglich ist, zu bestimmen, welches KickROM gerade verwendet wird und was dann geschehen soll.

Um meine SS verwenden zu können sei gesagt, das die jeweiligen SS in den entsprechenden Verzeichnissen der jeweiligen Workbench wirklungslos sind. Sollte gewünscht werden das die SS aus dem Verzeichnis der jeweiligen Workbench abgearbeitet wird, muß meine SS entsprechend geändert werden!

Die SS, die unter folgendem Link heruntergeladen werden können, müssen allesamt nach DH0:s kopiert werden.

ftp://studiowwh.dyndns.org - Username: anonymous (Achtung! Server ist NICHT permanent online!)

Danach sollte der Rechner gebootet werden und alles so funktionieren wie gewünscht (aber wann tut es das schon mal?) :-)

Anmerkung; bei einem zusätzlichen Aufspielen von 3.0 und/oder 2.1 muß die Startup-Sequence angepaßt werden.
Dies geschieht, wie bereits erwähnt, mittels der Versionsabfrage.
Ich gehe mal davon aus, daß man die Startup-Sequence(n) ohnehin anpassen wird und ein wenig damit umgehen kann.

Auch wert noch einmal darauf hinzuweisen: zu beachten ist, daß sämtliche Änderungen an der Startup-Sequence einer Workbench ausschließlich Wirkung zeigen werden, wenn sie im S-Verzeichnis
im Hauptverzeichnis der Festplatte editiert werden. Die Startup-Sequences der jeweiligen Workbenches sind in den angelegten Workbench-Verzeichnissen, wenn
der Pfad nicht auf diese Verzeichnisse umgeleitet wird, wirkungslos!

Das ganze liest sich jetzt wahrscheinlich schlimmer und verwirrender als es eigentlich ist.
Sollten dennoch unvorhergesehene Schwierigkeiten oder weitere Fragen auftreten, einfach wieder melden.

(c) Copyright JOSH, 2007
Nach oben
Kris
Gast





BeitragVerfasst am: Mo, 26.03.2007 14:08    Titel: Antworten mit Zitat

Die Startup-Sequnce Files können runtergeladen werden, aber ich denke es schadet nicht wenn wir sie hier ausführlich darstellen:

die modifizierte Startup Sequence
Zitat:
version >NIL: exec.library 37
if warn
DH0:1.3/c/assign c: DH0:1.3/c
c:assign sys: DH0:1.3
c:assign l: DH0:1.3/l
c:assign libs: DH0:1.3/libs
c:Assign fonts: DH0:1.3/fonts
c:assign devs: DH0:1.3/devs
c:makedir ram:t
c:assign t: ram:t
c:assign s: dh0:1.3/s
resident >NIL: CLI DH0:1.3/L/Shell-Seg SYSTEM PURE add
resident >NIL: DH0:1.3/c/Execute PURE
mount NEWCON: from DH0:1.3/devs/mountlist
failat 11
execute DH0:s/startup-sequence1.3
else
version >NIL: exec.library 37
if warn
DH0:2.0/c/assign c: DH0:2.0/c
;assign newcon: con:
resident >NIL: DH0:2.0/c/Execute pure add
resident >NIL: DH0:2.0/c/Assign pure add
DH0:2.0/c/assign devs: DH0:2.0/devs
DH0:2.0/c/assign sys: DH0:2.0
DH0:2.0/c/assign fonts: DH0:2.0/fonts
DH0:2.0/c/assign libs: DH0:2.0/libs
DH0:2.0/c/assign l: DH0:2.0/l
DH0:2.0/c/assign s: DH0:2.0/s
DH0:2.0/c/assign Utilities: DH0:2.0/Utilities
DH0:2.0/c/assign prefs: DH0:2.0/prefs

DH0:2.0/c/makedir ram:T ram:Clipboards ram:env ram:env/sys
DH0:2.0/c/copy >NIL: ENVARC: ram:env all quiet noreq
assign ENV: ram:env
assign T: ram:t ;set up T: directory for scripts
assign CLIPS: ram:clipboards

execute DH0:s/startup-sequence2.0
else
;assign newcon: con:
DH0:3.1/c/assign devs: DH0:3.1/devs
DH0:3.1/c/assign sys: DH0:3.1
DH0:3.1/c/assign c: DH0:3.1/c
DH0:3.1/c/assign l: DH0:3.1/l
DH0:3.1/c/assign s: DH0:3.1/s
DH0:3.1/c/assign libs: DH0:3.1/libs
DH0:3.1/c/assign fonts: DH0:3.1/fonts
DH0:3.1/c/assign Utilities: DH0:3.1/Utilities
DH0:3.1/c/assign prefs: DH0:3.1/prefs

DH0:3.1/c/makedir ram:T ram:Clipboards ram:env ram:env/sys
DH0:3.1/c/copy >NIL: ENVARC: ram:env all quiet noreq
assign ENV: ram:env
assign T: ram:t ;set up T: directory for scripts
assign CLIPS: ram:clipboards

resident >NIL: DH0:3.1/c/Execute pure add
;mount newcon:
execute DH0:3.1/s/startup-sequence
endif
ENDIF



Startup Sequence OS 1.3
Zitat:
DH0:1.3/c/assign fonts: DH0:1.3/fonts

failat 100
Addbuffers df0: 10
;Addbuffers df1: 10
c:SetPatch >NIL: ;patch system functions
cd c:
echo "Amiga 2000 Workbench disk. Release 1.3.3 version 34.34*N"
Sys:System/FastMemFirst ; move C00000 memory to last in list
BindDrivers
date ;load system time from real time clock (A1000 owners should
;replace the SetClock load with Date
;resident CLI L:Shell-Seg SYSTEM pure add; activate Shell
;resident c:Execute pure
;mount newcon:
;
;failat 11
run execute s:StartupII ;This lets resident be used for rest of script
wait >NIL: 5 mins ;wait for StartupII to complete (will signal when done)
;
;CDPD3:CDSetMap
path ram: c: sys:utilities sys:system s: sys:prefs add ;set path for Workbench
LoadWB delay ;wait for inhibit to end before continuing
endcli >NIL:


Startup Sequence OS 2.0

Zitat:
c:setpatch >NIL:
c:version >NIL:
addbuffers >NIL: df0: 15
Failat 21

Resident >NIL: C:Execute PURE ADD

makedir ram:T ram:Clipboards ram:env ram:env/sys
copy >NIL: ENVARC: ram:env all quiet noreq

assign ENV: ram:env
assign T: ram:t ;set up T: directory for scripts
assign CLIPS: ram:clipboards
assign REXX: s:

if exists sys:Monitors
join >NIL: sys:monitors/~(#?.info) as t:mon-start
execute t:mon-start
delete >NIL: t:mon-start
endif

BindDrivers

setenv Workbench $Workbench
setenv Kickstart $Kickstart

IPrefs

echo "Amiga Release 2. Kickstart $Kickstart, Workbench $Workbench"

conclip

mount speak:
mount aux:
mount pipe:

path ram: c: sys:utilities sys:rexxc sys:system s: sys:prefs sys:wbstartup add
if exists sys:tools
path sys:tools add
if exists sys:tools/commodities
path sys:tools/commodities add
endif
endif

; If this is the initial boot (i.e. keyboard env variable is not set)
; then execute PickMap which will query for a keymap and set the
; keyboard env variable.
;
; if keyboard env variable is set, set the keymap
if ${sys/keyboard} NOT EQ "*${sys/keyboard}"
setmap ${sys/keyboard}
else
PickMap sys: initial
endif

if exists s:user-startup
execute s:user-startup
endif

LoadWB

endcli >NIL:


Startup Sequence OS 3.1

Zitat:
; $VER: Startup-Sequence_LD 40.3 (31.8.93)
; Startup-Sequence for low-density floppies

C:SetPatch QUIET
C:Version >NIL:
C:AddBuffers >NIL: DF0: 15
FailAt 21

C:MakeDir RAM:T RAM:Clipboards RAM:ENV RAM:ENV/Sys
C:Copy >NIL: ENVARC: RAM:ENV ALL NOREQ

Resident >NIL: C:Assign PURE
Resident >NIL: C:Execute PURE

Assign >NIL: ENV: RAM:ENV
Assign >NIL: T: RAM:T
Assign >NIL: CLIPS: RAM:Clipboards
Assign >NIL: REXX: S:
Assign >NIL: PRINTERS: DEVS:Printers
Assign >NIL: KEYMAPS: DEVS:Keymaps
Assign >NIL: LOCALE: SYS:Locale
Assign >NIL: LIBS: SYS:Classes ADD
Assign >NIL: HELP: LOCALE:Help DEFER

IF NOT EXISTS SYS:L
Assign >NIL: L: Extras3.1:L DEFER
EndIF

IF NOT EXISTS SYS:Fonts
Assign FONTS:
EndIF

BindDrivers
C:Mount >NIL: DEVS:DOSDrivers/~(#?.info)

IF EXISTS DEVS:Monitors
IF EXISTS DEVS:Monitors/VGAOnly
DEVS:Monitors/VGAOnly
EndIF

C:List >NIL: DEVS:Monitors/~(#?.info|VGAOnly) TO T:M LFORMAT "DEVS:Monitors/%s"
Execute T:M
C:Delete >NIL: T:M
EndIF

SetEnv Language "english"
SetEnv Workbench $Workbench
SetEnv Kickstart $Kickstart
UnSet Workbench
UnSet Kickstart

C:AddDataTypes REFRESH QUIET

IF "`C:Avail TOTAL`" GE "1250000" VAL
C:LoadResource LIBS:diskfont.library LIBS:iffparse.library LIBS:asl.library LIBS:commodities.library

C:IPrefs

IF NOT $Language EQ "english"
CD LOCALE:Catalogs/$Language
C:LoadResource Sys/workbench.catalog Sys/libs.catalog Sys/prefs.catalog Sys/commodities.catalog Sys/utilities.catalog
CD SYS:
EndIF
Else
C:IPrefs
EndIF

C:ConClip

Path >NIL: RAM: C: SYS:Utilities SYS:Rexxc SYS:System S: SYS:Prefs SYS:WBStartup SYS:Tools SYS:Tools/Commodities

IF EXISTS S:User-Startup
Execute S:User-Startup
EndIF

Resident Execute REMOVE
Resident Assign REMOVE

C:LoadWB
EndCLI >NIL:



Startup II
Zitat:
resident c:Resident pure
resident c:List pure ; LIST und CD resident machen
resident c:CD pure
resident c:Mount pure ; die nächsten 3 resident zur Beschleunigung von Startup
resident c:Assign pure
resident c:Makedir pure
; IF, ENDIF, ELSE, SKIP, ENDSKIP und ECHO resident, falls
; Sie viele Scripts benutzen und sich den RAM-Bedarf leisten können.
; Dazu Failat, WAIT und ENDCLI resident machen, wenn IconX oft benutzt.
makedir ram:t
assign T: ram:t ; T:-Verzeichnis für Scripts
makedir ram:env ; ENV:-Verzeichnis anlegen
assign ENV: ram:env
makedir ram:clipboards ; CLIPS: anlegen und zuweisen
assign CLIPS: ram:clipboards
mount speak: ; Anmelden braucht nicht viel Speicher
mount aux:
mount pipe:
resident Mount remove ; Bei ausreichend RAM resident lassen,
resident Assign remove ; durch Löschen dieser Zeilen.
resident Makedir remove
;
break 1 C ; Signal an anderen Prozeß, daß er abschließen kann
Nach oben
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    German Amiga Community Foren-Übersicht -> Amiga Wiki Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht teilnehmen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de