home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d5xx
/
d564
/
aload.lha
/
ALoad
/
src.lzh
/
src4
/
aloadhug.a
< prev
next >
Wrap
Text File
|
1991-08-24
|
4KB
|
213 lines
*:ts=16
section VertB,code
include "exec/types.i"
include "exec/stack.i"
include "exec/execbase.i"
include "exec/lists.i"
include "exec/tasks.i"
include "adef.i"
xdef _VertBServer,_SetBase
xdef _SetOldCloseWB,_GetOldCloseWB
xdef _SetOldOpenWB,_GetOldOpenWB
xdef _WB_BASE_PTR
xdef _Old_OpenWB,_Old_CloseWB
xref _Update
_SetBase move.l 4(sp),_WB_BASE_PTR
rts
_SetOldOpenWB move.l 4(sp),_Old_OpenWB
rts
_SetOldCloseWB move.l 4(sp),_Old_CloseWB
rts
_GetOldOpenWB move.l _Old_OpenWB,d0
rts
_GetOldCloseWB move.l _Old_CloseWB,d0
rts
_VertBServer
tst.b WD_s_int(a1)
beq next_it
moveq.l #0,d0
move.l 4.w,a0
move.l LH_HEAD+TaskReady(a0),a0
subq.w #1,d0
loop:
SUCC a0,a0
move.l a0,d1
dbeq d0,loop
endcount
neg.w d0
subq.w #1,d0
move.l 4,a0
move.l ThisTask(a0),a0
move.l a0,d1
beq nonew
cmp.b #TS_RUN,TC_STATE(a0)
bne nonew
addq.w #1,d0
nonew
move.l 4.w,a0
moveq.l #1,d1
add.l d1,WD_Count_CNT(a1)
add.l d0,WD_Ready_CNT(a1)
sub.w d1,WD_cnt(a1)
bpl next_it
move.w WD_End_CNT(a1),WD_cnt(a1)
tst.b WD_s_rast(a1)
bne next_it
move.l a1,-(sp)
jsr _Update
addq.l #4,sp
next_it
moveq.l #0,d0
rts
xdef _NewClose
xdef _Old_CloseWB
xdef _Old_OpenWB
_NewClose
movem.l d0-d7/a0-a6,-(sp)
move.l _WB_BASE_PTR(PC),a2
move.l WD_close(a2),a0
move.l a0,d0
beq noclose
move.l a2,-(sp)
jsr (a0)
addq.l #4,sp
noclose
movem.l (sp)+,d0-d7/a0-a6
move.l _Old_CloseWB(PC),a0
jsr (a0)
tst.l d0
bne noreopen
movem.l d0-d7/a0-a6,-(sp)
move.l _WB_BASE_PTR(PC),a2
move.l WD_open(a2),a0
move.l a0,d0
beq nosetreopen
move.l a2,-(sp)
jsr (a0)
addq.l #4,sp
nosetreopen
movem.l (sp)+,d0-d7/a0-a6
noreopen rts
_WB_BASE_PTR dc.l 0
_Old_CloseWB dc.l 0
_Old_OpenWB dc.l 0
xdef _NewOpen
_NewOpen
move.l _Old_OpenWB(PC),a0
jsr (a0)
tst.l d0
beq noallopen
movem.l d0-d7/a0-a6,-(sp)
move.l _WB_BASE_PTR(PC),a2
move.l WD_open(a2),a0
move.l a0,d0
beq noopen
move.l a2,-(sp)
jsr (a0)
addq.l #4,sp
noopen
movem.l (sp)+,d0-d7/a0-a6
noallopen
rts
AreaMove equ -$fc
AreaDraw equ -$102
AreaEnd equ -$108
Move equ -$f0
Draw equ -$f6
WritePixel equ -$144
SetAPen equ -$156
RectFill equ -$132
xdef _CalcShift
_CalcShift
move.l 4(sp),d0
swap d0
ext.l d0
rts
xdef _FindMaxValue
* FindMaxValue (struct WIN_DEF *wd)
_FindMaxValue
move.l 4(sp),a0
moveq.l #0,d0
move.w WD_buffer_size(a0),d1
subq.w #1,d1
bmi end_find_loop
move.l WD_buffer(a0),a0
find_loop
cmp.l (a0)+,d0
bge no_new_find_value
move.l -4(a0),d0
no_new_find_value
dbra d1,find_loop
end_find_loop
rts
section ALoadData,data
include "intuition/intuition.i"
xdef _WinTagList
xdef _SizeFlag
xdef _IDCMPFlags
xdef _WIN_XPOS,_WIN_YPOS
xdef _WIN_WIDTH,_WIN_HEIGHT
xdef _TitlePtr
FALSE equ 0
TRUE equ -1
_WinTagList dc.l WA_SizeGadget
_SizeFlag dc.l FALSE
dc.l WA_DragBar
dc.l TRUE
dc.l WA_DepthGadget
dc.l TRUE
dc.l WA_CloseGadget
dc.l TRUE
dc.l WA_AutoAdjust
dc.l TRUE
dc.l WA_IDCMP
_IDCMPFlags dc.l IDCMP_CLOSEWINDOW
dc.l WA_Title
_TitlePtr dc.l 0
dc.l WA_Top
_WIN_YPOS dc.l 0
dc.l WA_Left
_WIN_XPOS dc.l 0
dc.l WA_Width
_WIN_WIDTH dc.l 256
dc.l WA_Height
_WIN_HEIGHT dc.l 64
dc.l WA_DetailPen
dc.l 0
dc.l WA_BlockPen
dc.l 1
dc.l WA_MinWidth
dc.l 44
dc.l WA_MinHeight
dc.l 32
dc.l WA_MaxWidth
dc.l 1400
dc.l WA_MaxHeight
dc.l 600
dc.l TAG_DONE
dc.l 0
end