home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fujiology Archive
/
fujiology_archive_v1_0.iso
/
F
/
FMCC
/
FCST_V20.ZIP
/
FCST_V20.MSA
/
EXAMPLE.GFA
(
.txt
)
< prev
next >
Wrap
GFA-BASIC Atari
|
1989-12-31
|
3KB
|
70 lines
'
' coded by Krystal & Killer D on 14/12/90 at 4:42 am
'
RESERVE 100000 ! pour les MALLOCS
secur%=MALLOC(63054) ! adresse la plus basse possible pour l'écran
adr_bloc%=MALLOC(63054) ! adresse la plus haute possible pour l'écran
IF adr_bloc%=0 ! Si les blocs n'ont pas été alloués
PRINT "Pas assez de mémoire!"
~INP(2)
END
ENDIF
scr#=adr_bloc% AND &H0 ! Calcul de l'adresse écran multiple de 65536
' inférieure à ADR_BLOC%
pic%=scr#+160 ! Adresse écran relative
pal$=STRING$(32,0) ! Espace pour la palette
' ## INLINE:
' $0000: 60 00 01 a2 41 fa 00 7c 22 6f 00 04 4c d1 00 ff
' $0010: 48 d0 00 ff 48 7a 00 0c 3f 3c 00 26 4e 4e 5c 8f
' $0020: 4e 75 11 fc 00 12 fc 02 41 fa 00 56 10 f8 fa 07
' $0030: 10 f8 fa 09 42 38 fa 07 42 38 fa 09 2f 38 00 70
' $0040: 41 fa 01 9c 21 c8 00 70 4c fa 00 ff 00 36 48 f8
' $0050: 00 ff 82 40 0c 38 00 39 fc 02 66 f8 4c fa 00 ff
' $0060: 00 42 48 f8 00 ff 82 40 21 df 00 70 41 fa 00 12
' $0070: 11 d8 fa 07 11 d8 fa 09 11 fc 00 08 fc 02 4e 75
' $0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
' $0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
' $00a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
' $00b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
' $00c0: 00 00 48 e7 ff fe 46 fc 27 00 47 f8 82 09 43 f8
' $00d0: 82 60 41 f8 82 0a 78 00 76 02 7c 10 45 50 53 49
' $00e0: 10 a2 42 38 82 0a 45 50 53 49 00 0c 11 fc 00 02
' $00f0: 82 0a 1e 13 67 fc 9c 47 ed 6f 45 50 53 49 00 5e
' $0100: 3c 3c 00 e2 4e 71 12 83 4e 71 12 84 45 50 53 49
' $0110: 00 59 10 84 10 83 45 50 53 49 00 0d 12 83 4e 71
' $0120: 12 84 45 50 53 49 00 08 51 ce ff 10 12 83 4e 71
' $0130: 12 84 45 50 53 49 00 59 10 84 10 83 45 50 53 49
' $0140: 00 0d 12 83 4e 71 12 84 45 50 53 49 00 09 10 84
' $0150: 12 83 4e 71 4e 71 12 84 10 83 45 50 53 49 00 57
' $0160: 10 84 10 83 45 50 53 49 00 0d 12 83 4e 71 12 84
' $0170: 45 50 53 49 00 0b 70 2b 12 83 4e 71 12 84 45 50
' $0180: 53 49 00 59 10 84 10 83 45 50 53 49 00 0d 12 83
' $0190: 4e 71 12 84 45 50 53 49 00 09 51 c8 ff 10 4c df
' $01a0: 7f ff 4e 73 41 fa ff 1c 43 fa 00 34 30 18 b0 7c
' $01b0: 45 50 66 16 30 18 b0 7c 53 49 66 0e 32 18 53 41
' $01c0: 32 fc 4e 71 51 c9 ff fa 60 e2 32 c0 b0 7c 4e 73
' $01d0: 66 da 41 fa fe 2c 20 bc 4e 71 4e 71 4e 75 28 63
' $01e0: 29 31 39 39 30 20 45 50 53 49 4c 4f 4e 20 63 6f
' $01f0: 64 65 64 20 66 6f 72 20 48 55 54 43 48 2e 2e 2e
' 512 Bytes.
INLINE rout%,512
o%=XBIOS(3) ! pour remettre l'écran à sa place après
CLS
BLOAD "*.kid",pic%-34 ! Charger l'image à l'adresse relative
~XBIOS(5,L:scr#,L:scr#,W:-1) ! Positionner les adresses de l'écran sur l'image
rout$=SPACE$(11000) ! Espace nécessaire à la routine
rout#=V:rout$
BMOVE rout%,rout#,512 ! Relocation de la routine dans la zone allouée
~C:rout#() ! 1er appel
BMOVE pic%-32,V:pal$,32 ! Palette
FOR i%=scr# TO scr#+160 STEP 4 ! Nettoyage 1ere ligne (inutilisée ici)
LPOKE i%,0
NEXT i%
~C:rout#(L:V:pal$) ! Affichage du fullscreen
~XBIOS(5,L:o%,L:o%,W:-1) ! Adresses écrans initiales
~MFREE(secur%) ! Liberation des zones allouées
~MFREE(adr_bloc%)
RESERVE -1
SETCOLOR 0,7,0,0
EDIT ! bye !