CHAPTER 5
pea
msg2
*
move.w
#$9,-(a7)
*
trap
#$1
*
addq.l
#6, a7
*
bsr.w delay
*
clr.w
-(a7)
*
trap
#$1
call GEMDOs
clean stack
end program
Install:
move.1
move.1
move.w
trap
addg.1
pea
move.w
trap
addq.1
bsr.w
clr.w
move.1
sub.l
add. 1
move. 1
move.w
trap
#toggle,scr_dump
oldstack,-(a7)
#$20,-(a7)
#$1
#6,a7
msg3
#$9,-(a7)
#$1
#6,a7
delay
#init,d0
#start,d0
#$100,dO
d0,-(a7)
#$31,-(a7)
#$1
* install coggle in screendump vector
* push old stack
* out of super mode
* call GEMDOS
*
clean stack
* print install message
* CCONWS
* call GEMDOS
* clean stack
* wait a bit to let them read it
* terminate and stay resident
* take address of end of resident part
* -start address of program
* plus 256 bytes for basepage
* push on stack
* ptermres
* call GEMDOS to end program
*** delay subroutine— just loop around a while
* loop about (32 * 65536) times
delay:
move.w #$20,dO
dloop:
dbf dl,dloop
dbf dO,dloop
rts
*** Text data for messages
.data
msgl:
dc.b
dc.b
dc.b
msg2:
dc.b
msg3:
dc.b
$1B,'E'
1KEYCLICK TOGGLER..',$0D,$0A
'Replaces Alternate-Help screen dump',$0D,$0A,$00
$07,'Already
'Installed',$0D,$0A,$00,$00
*** Temporary storage for old user stack pointer
.bss
oldstack:
ds.l 1
end
Time and Date Functions
GEMDOS keeps track of the date and time to date stamp a
file, showing when it was created or last updated. The GEM
DOS functions used to get and set the DOS time and date
are very similar to those provided by the XBIOS to get and
set the IKBD controller's time and date. The main difference
is that separate functions are provided here to set the time
106