home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga ACS 1998 #6
/
amigaacscoverdisc1998-061998.iso
/
games
/
descent
/
source
/
bios
/
t.asm
< prev
next >
Wrap
Assembly Source File
|
1998-06-08
|
5KB
|
54 lines
;THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
;SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
;END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
;ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
;IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
;SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
;FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
;CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
;AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
;COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
xor ax, ax ; Send
cli ; Disable interrupts while using timer
out 043h, al
in al, 040h
in al, 040h
sti
push ax
mov ax, [n_milliseconds]
mov bx, 37
imul bx
mov si, dx
mov di, ax
mov cl, 3
shr di, cl
shr si, cl
mov cl, 13
shl dx, cl
or di, dx
xor cx, cx
xor bx, bx
pop ax
MsTimerLoop:
mov dx, ax
xor ax, ax
cli
out 043h, al
in al, 040h
in al, 040h
sti
cmp ax, dx
jbe MsNoWrap
add dx, 256
MsNoWrap:
sub dx, ax
add bx, dx
adc cx, 0
cmp cx, si
ja MsDone
jb MsTimerLoop
cmp bx, di
jb MsTimerLoop
MsDone: ret