; Exemple de rasters par Offset ; Programme r{alis{ avec MAXAM, si vous avez DAMS les DS n ; doivent etre remplac{s par des DEFS n,0. ; Org &5000 di ; Disable Interrupt ld hl,(&38) ; On sauve les vieilles ld (inter),hl ; Interruptions ld hl,&c9fb ; On met les nouvelles ld (&38),hl ; EI et RET ei ; Enable Interrupt Prog ld b,&f5 ; On s{lectionne le Port B du PPI Synchro in a,(c) ; On pique son contenu rra ; On teste si le Bit0=1 jp nc,synchro ; Si Bit0=0 alors on attend la fin ; du balayage halt ; On attend que le balayage arrive halt ; a peu pr}s au milieu de l'{cran halt ; Patience... halt ; Ouf, le dernier ! ds 20 ; On se calle en d{but de ligne... ld b,&7f ; On s{lection le Gate Array ld hl,raster ; HL pointe sur la table de couleurs Boucle ld a,(hl) ; On charge la couleur dand A cp 255 ; Si A=255 alors... jp z,key ; On saute au test clavier ld c,16 ; On selectionne le border out (c),c ; Et hop l@ ! out (c),a ; On le met @ la couleur ld c,0 ; On s{lectionne l'encre 0 out (c),c ; Et hop l@ ! out (c),a ; On la met elle aussi @ la couleur inc hl ; On pointe sur la couleur suivante ds 32 ; On attend la fin de la ligne... jp boucle ; C'est reparti pour un tour ! ; ; Test de la barre espace ; Key ld bc,&f40e ; No comment ici, out (c),c ; c'est pas les rasters... ld bc,&f6c0 out (c),c xor a out (c),a ld bc,&f792 out (c),c ld bc,&f645 out (c),c ld b,&f4 in a,(c) ld bc,&f782 out (c),c ld bc,&f600 out (c),c rla jp c,prog ; Bref, si pas espace alors ; on repart pour un tour... di ; Disable Interrupt ld hl,(inter) ; On recup}re les anciennes ld (&38),hl ; interruptions ei ; Enable Interrupt ret ; Retour @ la case d{part ; ; Les datas... ; Inter dw 0000 Raster db 20+64,4+64,21+64,23+64,31+64,19+64,11+64 db 3+64,10+64,14+64,12+64,28+64,20+64 db 255