home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 2: PC
/
frozenfish_august_1995.bin
/
bbs
/
d07xx
/
d0764.lha
/
CLI-Tools
/
Reset.S
< prev
next >
Wrap
Text File
|
1992-11-21
|
1KB
|
73 lines
incdir "ram:include/"
include exec_lib.i
include dos_lib.i
CALLLIB MACRO
jsr _LVO\1(a6)
ENDM
_LVOColdReboot = -$2d6
START
movea.l 4.w,a6 ;a6: ExecBase
move.b (a0),d0
cmpi.b #'?',d0 ;'?' als Parameter?
beq.s reset_usage
bclr #5,d0 ;'w' oder 'W' als Parameter?
cmpi.b #'W',d0
beq.s reset_wait
CALLLIB Disable ;stop the system
move.l a6,$26(a6) ;ChkBase zerst÷ren => Kaltstart
moveq #36,d0
cmp.w 20(a6),d0 ;bei OS >= 2.0 Kickstart-Routine
bhs.s .oldkick ;verwenden
CALLLIB ColdReboot ;fⁿhrt Reset aus (Warmstart)
.oldkick
CALLLIB SuperState
lea $fc0002,a0 ;Adresse Reset-Routine
reset ;Peripherie-Reset
jmp (a0) ;Reset
reset_wait:
move.l a6,$26(a6) ;ChkBase zerst÷ren
moveq #0,d0 ;Ende
rts
reset_usage:
lea DOSName(pc),a1 ;DOS-Lib ÷ffnen
moveq #0,d0
CALLLIB OpenLibrary
tst.l d0
beq.s ende
movea.l d0,a6 ;Ausgabe ermitteln
CALLLIB Output
move.l d0,d1
move.l #text,d2 ;Text ausgeben
move.l #textlen,d3
CALLLIB Write
movea.l a6,a1 ;DOS-Lib schlie▀en
CALLEXEC CloseLibrary
ende:
moveq #0,d0
rts
;*** Daten ***
DOSName: dc.b "dos.library",0
;fⁿr DOS-Befehl Version
dc.b 0,"$VER: Reset 1.2 (30.7.92 ⌐ Thies Wellpott)",0
text: dc.b "Usage:",$a
dc.b " Reset w next reset (e. g. CTRL-A-A) is a cold reset",$a
dc.b " Reset confirm cold reset",$a
textlen = *-text
even