Ce source ce compile sans problème sous l'assembleur de WinAPE.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; https://cpcrulez.fr ;; ;; Raster qui rebondit ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG #1000 ; ; LD ix,tab ; IX pointe sur tab LD iy,att ; IY pointe sur att DI LD hl,(#38) ; Stocke (#38) LD (inter+1),hl LD hl,#c9fb ; Vire interrupts LD (#38),hl EI loop ; Boucle principale LD b,#f5 ; Synchronisation avec écran vsync IN a,(c) RRA JP nc,vsync ; LD bc,#7f9d ; Remet compteur interrupt a 0 OUT (c),c HALT ; attent un p'tit peu ;NOP LD a,(cont) INC a LD (cont),a CP 57 ; Teste si fin de att JP z,change ; Si oui --> Change XOR a NOP JP suite ; Je sais,c'est debile,mais bon... suite LD a,(cont) LD (pl0+2),a pl0 LD a,(iy+0) ; lit att qui est point par iy LD b,a lp00 DEFS 34,0 ; 1 = 34 nops d'attente , 2=68 nops... DJNZ lp00 ; LD b,40 ; Rapete 40 fois (40 donnees) lp1 PUSH bc LD a,b ; Met b-1 dans b DEC a LD (pl1+2),a ; met a dans pl1+2 Ld a,(ix+a) pl1 LD a,(ix+0) LD bc,#7f00 ; Fond OUT (c),c OUT (c),a LD c,#10 ; Border OUT (c),c OUT (c),a DEFS 22,0 ; NOP pour Synchro POP bc DJNZ lp1 ; key LD bc,#f40e ; Teste la barre Espace OUT (c),c 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,loop ; Boucle si non inter LD hl,0 ; Fin (remet Interupts) LD (#38),hl RET ; ; Donnes ; cont DEFB 0 ; Compteur pour le rebond ; tab ; Table des couleurs pour le Raster DEFB #54,#4c,#5c,#4c,#4c DEFB #4e,#4c,#4e,#4e,#4a DEFB #4e,#4a,#4a,#43,#43 DEFB #43,#43,#4b,#43,#4b DEFB #4b,#43,#4b,#43,#43 DEFB #43,#43,#4a,#4a,#4e DEFB #4a,#4e,#4e,#4c,#4e DEFB #4c,#4c,#5c,#4c,#5c ; change ; Remet cont a 0 XOR a LD (cont),a JP suite ; att ; Table des attentes DEFS 3,1 DEFS 3,2 DEFS 3,4 DEFS 3,8 DEFS 3,16 DEFS 3,32 DEFS 3,64 DEFS 3,128 DEFS 3,200 DEFS 3,0 DEFS 3,200 DEFS 3,128 DEFS 3,64 DEFS 3,32 DEFS 3,16 DEFS 3,8 DEFS 3,4 DEFS 3,2 DEFS 3,1https://CPCrulez.fr
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser... |
CPCrulez[Content Management System] v8.7-desktop/c Page créée en 740 millisecondes et consultée 1931 foisL'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko. |
|
|