home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Enigma Amiga Life 110
/
EnigmaAmiga110CD.iso
/
software
/
varie
/
ksc_utils
/
ffm.asm
< prev
next >
Wrap
Assembly Source File
|
2000-02-21
|
829b
|
40 lines
; ffm v1.1 : converts half of your memory to FAST memory
; by Kyzer/CSG
; $VER: ffm.asm 1.1 (08.04.98)
;
incdir include:
include lvo/exec_lib.i
include exec/memory.i
ffm move.l 4.w,a6
moveq.l #MEMF_PUBLIC|MEMF_FAST,d1
jsr _LVOAvailMem(a6)
tst.l d0 ; quit if we already have fastmem
bne.s .quit
moveq.l #MEMF_PUBLIC,d1
jsr _LVOAvailMem(a6)
tst.l d0
beq.s .fail
asr.l #1,d0 ; d0 = memsize = availablemem/2
move.l d0,d2
moveq.l #MEMF_PUBLIC,d1
jsr _LVOAllocMem(a6)
tst.l d0 ; allocate(memsize)
beq.s .fail
move.l d0,a0
move.l d2,d0
subq.l #4,d0 ; size
move.l a0,a1 ; name
move.l #"FFM"<<8,(a0)+ ; membase (name+4)
moveq.l #MEMF_PUBLIC|MEMF_FAST,d1; attributes
moveq #0,d2 ; priority
jsr _LVOAddMemList(a6)
move.w #$0f0,$dff180 ; flash green
.quit moveq #0,d0
rts
.fail moveq #20,d0
rts