[JEU] Pouifouf de Leglod :D

[JEU] Pouifouf de Leglod :D

Messagede leglod » Sam 15 Nov 2008 21:03

Bonjour, voila le source de mon jeu Pouidouf pour STE de preference 1 mega, je ne me rappel pas si ca passe avec 512 ko ?
Il utilise le son DMA le Blitter et le Hardscroll ! A l'epoque je faisais tout de memoire du coup mon listing n'est pas du tout commenter :? et meme moi je ne m'y retrouve plus dedans !

L'archive complete est dispo la ! http://leglod.free.fr/ATARI/Disqettes/Pouifile.zip ou au format disquette ST la http://leglod.free.fr/ATARI/Disqettes/PouifST.zip

Le jeu se joue au clavier avec seulement deux touche gauche et droite, ca semble simple !
LE but du jeu , il ya des bonus sur des plateforme qu'il faut ramaser (en passante dessus) pour ateindre d'autres plateforme il ya a des tremplins , il ya aussi des monstres qui rodent, mais comme le jeu n'est pas fini il sont inoffensif, mais parfois embetant voir util il font monter le perso :lol: pratique pour attendre certaines plateformes ! Il ya aussi des bonus qui tombent du ciel normalement en les attrapant notre perso recupere de la vie !

Quand le jeu demarre il y a ni sons ni musique !
F1 active le son F2 l'eteind
F2 affiche la barre de vie F3 l'enleve
F4 active la musique F5 l'eteind
F6 affiche le temps machine (je crois ?)
F10 entre en mode editeurs de niveau il me semble que L charge les niveaux et S sauvegarde!
Clic gauche pour dessiner clic droite pour selectionner l'emement a afficher !
+ et - du paver numerique pour monter et descendre de niveau , il y en a 50 !

Voila je crois que c'est tout !
Dernière édition par leglod le Sam 15 Nov 2008 21:09, édité 1 fois.
Avatar de l’utilisateur
leglod
 
Messages: 182
Inscription: Jeu 6 Nov 2008 22:33
Localisation: Montpellier (34) sud France

Re: [JEU] Pouifouf de Leglod :D

Messagede leglod » Sam 15 Nov 2008 21:05

Code: Tout sélectionner
'
'  A dater du 15/10/96  ---->  15/12/96
'
RESERVE 100000
DIM mptab|(25,28)
DIM mptabo|(25,1400)
'
'
dtab%=V:mptabo|(0,0)
ftab%=V:mptabo|(25,1400)
ltab%=ftab%-dtab%
'
DIM s_mdb%(6),d_mdb%(6),sd_md%(10)
'
'
'
mpini
'
'
'
a%=XBIOS(2)
z%=a%
a%=a%-128000
b%=a%-128000
c%=b%-32000
d%=c%-32000
e%=d%-32000
ee%=e%-32000
ecransauv%=ee%-32000
f%=ecransauv%-32036
'
BLOAD "letablo.hol",dtab%
'
'
BLOAD "mp_spm_d.pi1",f%
BMOVE f%+34,a%,32000
FOR i%=0 TO 31 STEP 2
  SDPOKE &HFF8240+i%,DPEEK((f%+2)+i%)
NEXT i%
BMOVE f%+34,c%,32000
BLOAD "mp_spm_g.pi1",f%
BMOVE f%+34,d%,32000
BLOAD "switcomp.pi1",f%
BMOVE f%+34,e%,32000
'
pom1%=f%-7164
pom2%=pom1%-3644
pom3%=pom2%-5628
pom4%=pom3%-3308
haileu%=pom4%-11131
'
'
BLOAD "pom1.dac",pom1%
BLOAD "pom2.dac",pom2%
BLOAD "pom3.dac",pom3%
BLOAD "pom4.dac",pom4%
BLOAD "hailleu.dac",haileu%
'
'
HIDEM
leve%=0
letab
'
moini
haileuu
'
INLINE rebond%,6038
INLINE shirley%,13086
INLINE kia%,9004
INLINE klax%,7856
INLINE bonus%,11244
'
dacson%=0
'
toukey%=PEEK(&H484)
'
SPOKE &H484,2
'
delamuz
'
super%=GEMDOS(&H20,L:0)
'
'
prand
'
' pm1x%=320
' pm1y%=260
' rpm1x%=pm1x%
' rpm1y%=pm1y%
'
' SETMOUSE pm1x%,pm1y%
'
'
raston%=0
rastoff%=1
'
'
REPEAT
  '
  lesotres
  '
  apreslautre
  '
  pox%=SUB(ADD(x%,16),160)
  poy%=SUB(ADD(y%,16),100)
  '
  IF poy%<=0
    poy%=0
  ENDIF
  IF pox%<=0
    pox%=0
  ENDIF
  IF poy%>=200
    poy%=200
  ENDIF
  IF pox%>=320
    pox%=320
  ENDIF
  '
  ofsetp%=pox% MOD 16
  ecr%=ADD(ADD(a%,MUL(poy%,320)),MUL(DIV(pox%,16),8))
  '
  IF ofsetp%=0
    ofsetl%=80
  ELSE
    ofsetl%=76
  ENDIF
  spron
  '
  '
  '
  carot1
  c1arot1
  c2arot1
  c3arot1
  '
  '
  '
  IF st%=68 AND cofi%=0
    cofi%=1
    confidoiedecanar
    sproffb
    '
    ~GEMDOS(&H20,L:super%)
    edtab
    super%=GEMDOS(&H20,L:0)
    grrr%=0
    grrr2%=0
    tomi%=0
    tomo%=0
    spron
  ENDIF
  IF st%=59
    dacson%=1
  ENDIF
  IF st%=63
    ~XBIOS(&H26,L:music%)         ! Initialize the music
    SLPOKE &H4D2,music%+8         ! Play it at each VBL
  ENDIF
  IF st%=64
    SLPOKE &H4D2,0                ! Stop playing
    ~XBIOS(&H26,L:music%+4)       ! Switch off all voices and set back interrupts
  ENDIF
  '
  IF st%=65 AND goulougoulou%=0
    SWAP raston%,rastoff%
  ENDIF
  '
  '
  IF st%=60
    dacson%=0
  ENDIF
  '
  IF st%=61
    onaf%=1
  ENDIF
  IF st%=62
    machibibulchouette
    onaf%=0
  ENDIF
  '
  lavielamort
  spran
  carot2
  c1arot2
  c2arot2
  c3arot2
  '
  IF onaf%=1
    '
    aa%=ADD(ADD(a%,120),MUL(196,320))
    cc%=ADD(ADD(d%,DIV(niarftomx%,2)),MUL(niarftomy%,160))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,128
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,288
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,17
    DPOKE &HFF8A38,8
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    aa%=ADD(ADD(a%,168),MUL(196,320))
    cc%=ADD(ADD(d%,DIV(niatomox%,2)),MUL(niatomoy%,160))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,128
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,288
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,17
    DPOKE &HFF8A38,8
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  '
  VOID XBIOS(5,L:a%,L:ecr%,-1)
  SWAP a%,b%
  IF raston%=1
    DPOKE &HFF8240,&HA0C
  ENDIF
  VSYNC
  IF raston%=1
    DPOKE &HFF8240,&HB0B
  ENDIF
  POKE &HFF8265,ofsetp%
  POKE &HFF820F,ofsetl%
  '
  cofi%=0
  IF st%=68
    cofi%=1
  ENDIF
  '
  goulougoulou%=0
  IF st%=65
    goulougoulou%=1
  ENDIF
  '
  carot3
  c1arot3
  c2arot3
  c3arot3
  '
  '
  sproff
  '
  rx%=x%
  ry%=y%
  '
  rxelen%=elenx%
  ryelen%=eleny%
  rxelen2%=elenx2%
  ryelen2%=eleny2%
  '
  IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,16),16))=>30 AND mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,16),16))=<39
    '
    shirley
    shishi%=SUB(shishi%,1)
    IF shishi%<=0
      sproffb
      shirley
      grrr%=0
      grrr2%=0
      tomi%=0
      '
      ~GEMDOS(&H20,L:super%)
      INC leve%
      IF leve%>=50
        leve%=50
      ENDIF
      '
      letab
      super%=GEMDOS(&H20,L:0)
      cc%=ADD(ADD(a%,120),MUL(196,320))
      aa%=ADD(ADD(e%,0),MUL(192,160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,288
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,128
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,17
      DPOKE &HFF8A38,8
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
      cc%=ADD(ADD(a%,168),MUL(196,320))
      aa%=ADD(ADD(e%,32),MUL(192,160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,288
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,128
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,17
      DPOKE &HFF8A38,8
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
  ENDIF
  '
  '
  '
UNTIL MOUSEK=3
~GEMDOS(&H20,L:super%)
VSYNC
VOID XBIOS(5,L:z%,L:z%,-1)
VSYNC
SHOWM
SPOKE &HFF820F,0
SPOKE &HFF8265,0
SPOKE &H484,toukey%
SLPOKE &H4D2,0                ! Stop playing
~XBIOS(&H26,L:music%+4)       ! Switch off all voices and set back interrupts
klax2
BMOVE ecransauv%,z%,32000
RESERVE -100000
PRINT FRE()
EDIT
> PROCEDURE edtab
  '
  '
  lach%=1
  MOUSE mx%,my%,mbt%
  rmx%=mx%
  rmy%=my%
  SETMOUSE mx%,my%
  '  DEFLINE 2
  REPEAT
    MOUSE mox%,moy%,mbt%
    mx%=mox%
    my%=moy%
    IF my%>=192
      my%=192
    ENDIF
    IF mx%>=304
      mx%=304
    ENDIF
    '
    '
    st%=PEEK(&HFFFC02)
    '
    alibay%=0
    IF st%=68 AND cofi%=0
      klax2
      alibay%=1
    ENDIF
    '
    IF st%=78 AND cofi%=0
      klax2
      '      leve%=leve%+1
      INC leve%
      IF leve%>=50
        leve%=50
        '
      ENDIF
      FOR px%=0 TO 25
        FOR py%=0 TO 28
          pyy%=ADD(MUL(leve%,25),py%)
          mptab|(px%,py%)=mptabo|(px%,pyy%)
        NEXT py%
      NEXT px%
      letab2
    ENDIF
    '
    IF st%=74 AND cofi%=0
      klax2
      '      leve%=leve%-1
      DEC leve%
      IF leve%<=0
        leve%=0
      ENDIF
      FOR px%=0 TO 25
        FOR py%=0 TO 28
          pyy%=ADD(MUL(leve%,25),py%)
          mptab|(px%,py%)=mptabo|(px%,pyy%)
        NEXT py%
      NEXT px%
      letab2
    ENDIF
    '
    IF st%=114 AND cofi%=0
      klax2
      FOR px%=0 TO 25
        FOR py%=0 TO 28
          pyy%=ADD(MUL(leve%,25),py%)
          mptabo|(px%,pyy%)=mptab|(px%,py%)
        NEXT py%
      NEXT px%
    ENDIF
    '
    '
    '
    IF mbt%=2
      klax2
      BMOVE a%,ee%,32000
      BMOVE e%,z%,32000
      ouf
      VOID XBIOS(5,L:z%,L:z%,-1)
      VSYNC
      ramx%=mx%
      ramy%=my%
      REPEAT
        '
        MOUSE mx%,my%,mbt%
        IF mx%>=304
          mx%=304
        ENDIF
        IF my%>=176
          my%=176
        ENDIF
        '
        imx%=MUL(DIV(mx%,32),32)
        imy%=MUL(DIV(my%,16),16)
        '
        RC_COPY e%,0,96,32,16 TO z%,imx%,imy%,2
        '
        PRINT AT(13,13);"LEVEL:";leve%
        '
        '
        VOID XBIOS(5,L:z%,L:z%,-1)
        VSYNC
        BMOVE e%,z%,32000
        '
        '
      UNTIL mbt%=0
      BMOVE ee%,a%,32000
      SETMOUSE ramx%,ramy%
      limx%=imx%
      limy%=imy%
    ENDIF
    '
    imx%=MUL(DIV((mox%*2),32),32)
    imy%=MUL(DIV((moy%*2),16),16)
    IF imx%<=0
      imx%=0
    ENDIF
    IF imy%<=0
      imy%=0
    ENDIF
    '
    IF imx%>=608
      imx%=608
    ENDIF
    IF imy%>=384
      imy%=384
    ENDIF
    '
    '
    '
    mxblo%=MUL(DIV(mx%,31),32)
    myblo%=MUL(DIV(my%,15),16)
    IF myblo%<=64
      myblo%=64
    ENDIF
    IF mxblo%>=288
      mxblo%=288
    ENDIF
    IF myblo%>=176
      myblo%=176
    ENDIF
    '
    s_mdb%(0)=a%
    s_mdb%(3)=40
    s_mdb%(5)=4
    '
    d_mdb%(0)=e%
    d_mdb%(3)=20
    d_mdb%(5)=4
    '
    ' sd_md%(0)=(rmx%*2)
    '  sd_md%(1)=(rmy%*2)
    '   sd_md%(2)=(rmx%*2)+31
    '    sd_md%(3)=(rmy%*2)+15
    sd_md%(0)=MUL(rmx%,2)
    sd_md%(1)=MUL(rmy%,2)
    sd_md%(2)=ADD(MUL(rmx%,2),31)
    sd_md%(3)=ADD(MUL(rmy%,2),15)
    '
    sd_md%(4)=32
    sd_md%(5)=96
    ' sd_md%(6)=32+31
    sd_md%(6)=ADD(32,31)
    ' sd_md%(7)=96+15
    sd_md%(7)=ADD(96,15)
    sd_md%(8)=3
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    s_mdb%(0)=a%
    s_mdb%(3)=40
    s_mdb%(5)=4
    '
    d_mdb%(0)=e%
    d_mdb%(3)=20
    d_mdb%(5)=4
    '
    sd_md%(0)=rimx%
    sd_md%(1)=rimy%
    ' sd_md%(2)=rimx%+31
    sd_md%(2)=ADD(rimx%,31)
    '  sd_md%(3)=rimy%+15
    sd_md%(3)=ADD(rimy%,15)
    '
    sd_md%(4)=64
    sd_md%(5)=96
    '   sd_md%(6)=64+31
    sd_md%(6)=ADD(64,31)
    '   sd_md%(7)=96+15
    sd_md%(7)=ADD(96,15)
    sd_md%(8)=3
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    '
    '
    s_mdb%(0)=e%
    s_mdb%(3)=20
    s_mdb%(5)=4
    d_mdb%(0)=a%
    d_mdb%(3)=40
    d_mdb%(5)=4
    '
    sd_md%(0)=limx%
    sd_md%(1)=limy%
    '    sd_md%(2)=limx%+31
    '   sd_md%(3)=limy%+15
    sd_md%(2)=ADD(limx%,31)
    sd_md%(3)=ADD(limy%,15)
    '
    sd_md%(4)=imx%
    sd_md%(5)=imy%
    ' sd_md%(6)=imx%+31
    ' sd_md%(7)=imy%+15
    sd_md%(6)=ADD(imx%,31)
    sd_md%(7)=ADD(imy%,15)
    sd_md%(8)=3
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    '
    s_mdb%(0)=e%
    s_mdb%(3)=20
    s_mdb%(5)=4
    '
    d_mdb%(0)=a%
    d_mdb%(3)=40
    d_mdb%(5)=4
    '
    sd_md%(0)=0
    sd_md%(1)=96
    sd_md%(2)=31
    sd_md%(3)=111
    '
    ' sd_md%(4)=(mx%*2)
    '  sd_md%(5)=(my%*2)
    '   sd_md%(6)=(mx%*2)+31
    '    sd_md%(7)=(my%*2)+15
    sd_md%(4)=MUL(mx%,2)
    sd_md%(5)=MUL(my%,2)
    sd_md%(6)=ADD(MUL(mx%,2),31)
    sd_md%(7)=ADD(MUL(my%,2),15)
    sd_md%(8)=6
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    scrox%=MOUSEX
    scroy%=MOUSEY
    ofsetp%=(scrox%) MOD 16
    '
    ' ecr%=(a%+(scroy%)*320)+(scrox% DIV 16)*8
    ecr%=ADD(ADD(a%,MUL(scroy%,320)),MUL(DIV(scrox%,16),8))
    '
    IF ofsetp%=0
      ofsetl%=80
    ELSE
      ofsetl%=76
    ENDIF
    VOID XBIOS(5,L:a%,L:ecr%,-1)
    '
    '
    '
    '
    '
    '
    SWAP a%,b%
    VSYNC
    SPOKE &HFF8265,ofsetp%
    SPOKE &HFF820F,ofsetl%
    '
    cofi%=0
    IF st%=68 OR st%=78 OR st%=74 OR st%=114
      klax2
      cofi%=1
    ENDIF
    '
    '
    '
    '
    s_mdb%(0)=e%
    s_mdb%(3)=20
    s_mdb%(5)=4
    '
    d_mdb%(0)=a%
    d_mdb%(3)=40
    d_mdb%(5)=4
    '
    sd_md%(0)=32
    sd_md%(1)=96
    ' sd_md%(2)=32+31
    sd_md%(2)=ADD(32,31)
    ' sd_md%(3)=96+15
    sd_md%(3)=ADD(96,15)
    '
    ' sd_md%(4)=(rmx%*2)
    ' sd_md%(5)=(rmy%*2)
    '  sd_md%(6)=(rmx%*2)+31
    '   sd_md%(7)=(rmy%*2)+15
    '
    sd_md%(4)=MUL(rmx%,2)
    sd_md%(5)=MUL(rmy%,2)
    sd_md%(6)=ADD(MUL(rmx%,2),31)
    sd_md%(7)=ADD(MUL(rmy%,2),15)
    sd_md%(8)=3
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    s_mdb%(0)=e%
    s_mdb%(3)=20
    s_mdb%(5)=4
    '
    d_mdb%(0)=a%
    d_mdb%(3)=40
    d_mdb%(5)=4
    '
    sd_md%(0)=64
    sd_md%(1)=96
    '   sd_md%(2)=64+31
    sd_md%(2)=ADD(64,31)
    '    sd_md%(3)=96+15
    sd_md%(3)=ADD(96,15)
    '
    sd_md%(4)=rimx%
    sd_md%(5)=rimy%
    '   sd_md%(6)=rimx%+31
    sd_md%(6)=ADD(rimx%,31)
    '    sd_md%(7)=rimy%+15
    sd_md%(7)=ADD(rimy%,15)
    sd_md%(8)=3
    BITBLT s_mdb%(),d_mdb%(),sd_md%()
    '
    '
    rimx%=imx%
    rimy%=imy%
    '
    rmx%=mx%
    rmy%=my%
    '
    IF mbt%=1
      '
      s_mdb%(0)=e%
      s_mdb%(3)=20
      s_mdb%(5)=4
      d_mdb%(0)=a%
      d_mdb%(3)=40
      d_mdb%(5)=4
      '
      sd_md%(0)=limx%
      sd_md%(1)=limy%
      '     sd_md%(2)=limx%+31
      sd_md%(2)=ADD(limx%,31)
      '      sd_md%(3)=limy%+15
      sd_md%(3)=ADD(limy%,15)
      '
      sd_md%(4)=imx%
      sd_md%(5)=imy%
      '     sd_md%(6)=imx%+31
      sd_md%(6)=ADD(imx%,31)
      '      sd_md%(7)=imy%+15
      sd_md%(7)=ADD(imy%,15)
      sd_md%(8)=3
      BITBLT s_mdb%(),d_mdb%(),sd_md%()
      '
      s_mdb%(0)=e%
      s_mdb%(3)=20
      s_mdb%(5)=4
      d_mdb%(0)=b%
      d_mdb%(3)=40
      d_mdb%(5)=4
      '
      sd_md%(0)=limx%
      sd_md%(1)=limy%
      ' sd_md%(2)=limx%+31
      sd_md%(2)=ADD(limx%,31)
      ' sd_md%(3)=limy%+15
      sd_md%(3)=ADD(limy%,15)
      '
      sd_md%(4)=imx%
      sd_md%(5)=imy%
      '     sd_md%(6)=imx%+31
      sd_md%(6)=ADD(imx%,31)
      '      sd_md%(7)=imy%+15
      sd_md%(7)=ADD(imy%,15)
      sd_md%(8)=3
      BITBLT s_mdb%(),d_mdb%(),sd_md%()
      '
      zobx%=(zobxy%-((INT(zobxy%/10)*10)))
      zoby%=(zobxy%/10)
      '
      numa%=(limx%\32)+(10*(limy%\16))
      '
      mptab|(imx%\32,imy%\16)=numa%
      '
    ENDIF
    '
    IF st%=31
      klax2
      '
      '      ouf
      '     IF EXIST("letab.hol")=-1
      '    RENAME "letab.hol" AS "letab.bak"
      ' ENDIF
      '      OPEN "O",#1,"letab.lst"
      '
      '
      BSAVE "letablo.hol",dtab%,ltab%
      '
      st%=0
      '
      '     FOR tay%=0 TO 24
      '    fdatta$="data "
      '   FOR tax%=0 TO 19
      '  fdatta$=fdatta$+CHR$(mptab|(tax%,tay%)+48)
      ' NEXT tax%
      ' PRINT #1;fdatta$
      ' NEXT tay%
      ' CLOSE #1
      '
    ENDIF
    '
    IF st%=83
      klax2
      '
      FOR py%=0 TO 28
        FOR px%=0 TO 25
          mptab|(px%,py%)=0
        NEXT px%
      NEXT py%
      '
      letab2
      '
    ENDIF
    '
    '
    '
  UNTIL alibay%=1
  '  BMOVE e%,a%,32000
  letab2
RETURN
> PROCEDURE cach
  s_mdb%(0)=e%
  s_mdb%(3)=20
  s_mdb%(5)=4
  '
  d_mdb%(0)=a%
  d_mdb%(3)=40
  d_mdb%(5)=4
  '
  sd_md%(0)=32
  sd_md%(1)=96
  sd_md%(2)=ADD(32,31)
  sd_md%(3)=ADD(96,15)
  '
  sd_md%(4)=MUL(rmx%,2)
  sd_md%(5)=MUL(rmy%,2)
  sd_md%(6)=ADD(MUL(rmx%,2),31)
  sd_md%(7)=ADD(MUL(rmy%,2),15)
  sd_md%(8)=3
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  s_mdb%(0)=e%
  s_mdb%(3)=20
  s_mdb%(5)=4
  '
  d_mdb%(0)=b%
  d_mdb%(3)=40
  d_mdb%(5)=4
  '
  sd_md%(0)=32
  sd_md%(1)=96
  sd_md%(2)=ADD(32,31)
  sd_md%(3)=ADD(96,15)
  '
  sd_md%(4)=MUL(rmx%,2)
  sd_md%(5)=MUL(rmy%,2)
  sd_md%(6)=ADD(MUL(rmx%,2),31)
  sd_md%(7)=ADD(MUL(rmy%,2),15)
  sd_md%(8)=3
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  '
  s_mdb%(0)=e%
  s_mdb%(3)=20
  s_mdb%(5)=4
  '
  d_mdb%(0)=a%
  d_mdb%(3)=40
  d_mdb%(5)=4
  '
  sd_md%(0)=64
  sd_md%(1)=96
  sd_md%(2)=ADD(64,31)
  sd_md%(3)=ADD(96,15)
  '
  sd_md%(4)=rimx%
  sd_md%(5)=rimy%
  sd_md%(6)=ADD(rimx%,31)
  sd_md%(7)=ADD(rimy%,15)
  sd_md%(8)=3
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  s_mdb%(0)=e%
  s_mdb%(3)=20
  s_mdb%(5)=4
  '
  d_mdb%(0)=b%
  d_mdb%(3)=40
  d_mdb%(5)=4
  '
  sd_md%(0)=64
  sd_md%(1)=96
  sd_md%(2)=ADD(64,31)
  sd_md%(3)=ADD(96,15)
  '
  sd_md%(4)=rimx%
  sd_md%(5)=rimy%
  sd_md%(6)=ADD(rimx%,31)
  sd_md%(7)=ADD(rimy%,15)
  sd_md%(8)=3
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  '
  '
RETURN
PROCEDURE letab
  shishi%=0
  '
  super%=GEMDOS(&H20,L:0)
  FOR tay%=0 TO 24
    FOR tax%=0 TO 19
      tayy%=ADD(MUL(leve%,25),tay%)
      zobxy%=mptabo|(tax%,tayy%)
      zobx%=SUB(zobxy%,(MUL(DIV(zobxy%,10),10)))
      zoby%=DIV(zobxy%,10)
      '
      mptab|(tax%,tay%)=zobxy%
      IF zobxy%>=30 AND zobxy%<=39
        shishi%=ADD(shishi%,1)
      ENDIF
      '      IF zobx%<=0
      '     zobx%=0
      '  ENDIF
      '   IF zobx%>=9
      '  zobx%=9
      ' E'NDIF
      ' IF zoby%<=0
      ' zoby%=0
      ' ENDIF
      '  IF zoby%=>176
      '  zoby%=176
      ' ENDIF
      '
      aa%=ADD(ADD(a%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      aa%=ADD(ADD(b%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
    NEXT tax%
  NEXT tay%
  ~GEMDOS(&H20,L:super%)
  ' BMOVE a%,b%,128000
RETURN
> PROCEDURE letabo
  shishi%=0
lares:
  '
  DATA 00000000100000000000
  DATA 00VNOWVUTSR200000‚0
  DATA 00><;;:;;:=30ƒ000‹Œ0
  DATA 0004005005000600•–0
  DATA X0b4QQ5b25000>:XPŸ 0
  DATA D2DABBBC35060X5DDDD0
  DATA 03D4]^_b>:001DD01111
  DATA 0004ghi:05XQ1111171O
  DATA X004qrs505DDD1111O1D
  DATA D004{|}5X500101NDDDD
  DATA €00><:=DDD0010ND—D00
  DATA Šb02450000001NDS¡DQ0
  DATA EE034500G000NDSDDDDS
  DATA 000EEE0b8T00DDDDD`aD
  DATA 0000000EEE0000000jkD
  DATA 0000200000bQR0020tu0
  DATA 0000300000EEE0030~0
  DATA 01111101110000bS0ˆ‰0
  DATA 00010001000000EE0’“0
  DATA 000100010000000SXœb
  DATA 0001000100™š›0QEE0EE
  DATA 0101011100£¤¥XEEE000
  DATA 0101000100FFEEE˜E00”
  DATA P111XWP111FEEEE¢EbPž
  DATA BBBBBBBBBBBBBBBBBBBB
  '
  RESTORE lares
  super%=GEMDOS(&H20,L:0)
  FOR tay%=0 TO 24
    READ datta$
    FOR tax%=0 TO 19
      zax$=MID$(datta$,(tax%+1),1)
      '   zobxy%=(ASC(zax$)-48)
      '    zobx%=(zobxy%-((INT(zobxy%/10)*10)))
      '     zoby%=(zobxy%/10)
      '
      zobxy%=SUB(ASC(zax$),48)
      zobx%=SUB(zobxy%,(MUL(DIV(zobxy%,10),10)))
      zoby%=DIV(zobxy%,10)
      '
      mptab|(tax%,tay%)=zobxy%
      IF zobxy%>=30 AND zobxy%<=39
        shishi%=ADD(shishi%,1)
      ENDIF
      IF zobx%<=0
        zobx%=0
      ENDIF
      IF zobx%>=9
        zobx%=9
      ENDIF
      IF zoby%<=0
        zoby%=0
      ENDIF
      IF zoby%=>176
        zoby%=176
      ENDIF
      '
      aa%=ADD(ADD(a%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      '     DPOKE &HFF8A24,SWAP(cc%) AND &HFF
      LPOKE &HFF8A24,cc%
      '      DPOKE &HFF8A26,&HFFFF AND cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      ' DPOKE &HFF8A32,SWAP(aa%) AND &HFF
      LPOKE &HFF8A32,aa%
      ' DPOKE &HFF8A34,&HFFFFF AND aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      aa%=ADD(ADD(b%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      ' DPOKE &HFF8A24,SWAP(cc%) AND &HFF
      LPOKE &HFF8A24,cc%
      ' DPOKE &HFF8A26,&HFFFF AND cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      '    DPOKE &HFF8A32,SWAP(aa%) AND &HFF
      LPOKE &HFF8A32,aa%
      '   DPOKE &HFF8A34,&HFFFFF AND aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
    NEXT tax%
  NEXT tay%
  ~GEMDOS(&H20,L:super%)
  ' BMOVE a%,b%,128000
RETURN
> PROCEDURE letab2
  shishi%=0
  super%=GEMDOS(&H20,L:0)
  FOR tay%=0 TO 24
    FOR tax%=0 TO 19
      zobxy%=mptab|(tax%,tay%)
      '
      zobx%=SUB(zobxy%,(MUL(DIV(zobxy%,10),10)))
      zoby%=DIV(zobxy%,10)
      '
      mptab|(tax%,tay%)=zobxy%
      IF zobxy%>=30 AND zobxy%<=39
        shishi%=ADD(shishi%,1)
      ENDIF
      IF zobx%<=0
        zobx%=0
      ENDIF
      IF zobx%>=9
        zobx%=9
      ENDIF
      IF zoby%<=0
        zoby%=0
      ENDIF
      IF zoby%=>176
        zoby%=176
      ENDIF
      aa%=ADD(ADD(a%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      '  DPOKE &HFF8A24,SWAP(cc%) AND &HFF
      LPOKE &HFF8A24,cc%
      ' DPOKE &HFF8A26,&HFFFF AND cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      '   DPOKE &HFF8A32,SWAP(aa%) AND &HFF
      LPOKE &HFF8A32,aa%
      '  DPOKE &HFF8A34,&HFFFFF AND aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      aa%=ADD(ADD(b%,MUL(tax%,16)),MUL(MUL(tay%,16),320))
      cc%=ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      ' DPOKE &HFF8A24,SWAP(cc%) AND &HFF
      LPOKE &HFF8A24,cc%
      ' DPOKE &HFF8A26,&HFFFF AND cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      '     DPOKE &HFF8A32,SWAP(aa%) AND &HFF
      LPOKE &HFF8A32,aa%
      '      DPOKE &HFF8A34,&HFFFFF AND aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
    NEXT tax%
  NEXT tay%
  ~GEMDOS(&H20,L:super%)
  ' BMOVE a%,b%,128000
RETURN
> PROCEDURE rebond
  IF dacson%=1
    @convert_ste(ADD(rebond%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(rebond%,6038),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 1
  ENDIF
RETURN
> PROCEDURE bonus
  IF dacson%=1
    @convert_ste(ADD(bonus%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(bonus%,11244),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 1
  ENDIF
RETURN
> PROCEDURE shirley
  IF dacson%=1
    @convert_ste(ADD(shirley%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(shirley%,13086),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 0
  ENDIF
  mptab|(((x%+16)/32),((y%+16)/16))=0
  '
  bxx%=DIV(ADD(x%,16),32)
  byy%=DIV(ADD(y%,16),16)
  '
  cc%=e% !ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
  aa%=ADD(ADD(a%,MUL(bxx%,16)),MUL(MUL(byy%,16),320))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,144
  ' DPOKE &HFF8A24,SWAP(cc%) AND &HFF
  LPOKE &HFF8A24,cc%
  '  DPOKE &HFF8A26,&HFFFF AND cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,304
  ' DPOKE &HFF8A32,SWAP(aa%) AND &HFF
  LPOKE &HFF8A32,aa%
  ' DPOKE &HFF8A34,&HFFFFF AND aa%
  DPOKE &HFF8A36,9
  DPOKE &HFF8A38,16
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  cc%=e% !ADD(ADD(e%,MUL(zobx%,16)),MUL(MUL(zoby%,16),160))
  aa%=ADD(ADD(b%,MUL(bxx%,16)),MUL(MUL(byy%,16),320))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,144
  ' DPOKE &HFF8A24,SWAP(cc%) AND &HFF
  LPOKE &HFF8A24,cc%
  ' DPOKE &HFF8A26,&HFFFF AND cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,304
  ' DPOKE &HFF8A32,SWAP(aa%) AND &HFF
  LPOKE &HFF8A32,aa%
  ' DPOKE &HFF8A34,&HFFFFF AND aa%
  DPOKE &HFF8A36,9
  DPOKE &HFF8A38,16
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
RETURN
> PROCEDURE kia
  IF dacson%=1
    @convert_ste(ADD(kia%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(kia%,9004),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 1
  ENDIF
  '
RETURN
> PROCEDURE klax
  IF dacson%=1
    @convert_ste(ADD(klax%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(klax%,7856),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 1
  ENDIF
  '
RETURN
> PROCEDURE klax2
  @convert_ste(ADD(klax%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(klax%,7856),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 1
  '
RETURN
> PROCEDURE convert_ste(adrson%,VAR daca%,dacb%,dacc%)
  daca%=SWAP(adrson%) AND &HFF
  dacb%=SHR(adrson%,8) AND &HFF
  dacc%=adrson% AND &HFF
RETURN
> PROCEDURE ouf
  SPOKE &HFF8265,0
  SPOKE &HFF820F,0
RETURN
> PROCEDURE spron
  '
  bxx%=DIV(rx%,16)
  cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ry%,320))
  aa%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(96,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,296
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,136
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  bxx%=DIV(rxelen%,16)
  '
  cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ryelen%,320))
  aa%=ADD(ADD(d%,MUL(8,16)),MUL(128,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,296
  '  DPOKE &HFF8A24,SWAP(cc%) AND &HFF
  LPOKE &HFF8A24,cc%
  ' DPOKE &HFF8A26,&HFFFF AND cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,136
  ' DPOKE &HFF8A32,SWAP(aa%) AND &HFF
  LPOKE &HFF8A32,aa%
  ' DPOKE &HFF8A34,&HFFFFF AND aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,16
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  bxx%=DIV(rxelen2%,16)
  '
  cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ryelen2%,320))
  aa%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(160,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,296
  ' DPOKE &HFF8A24,SWAP(cc%) AND &HFF
  LPOKE &HFF8A24,cc%
  ' DPOKE &HFF8A26,&HFFFF AND cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,136
  ' DPOKE &HFF8A32,SWAP(aa%) AND &HFF
  LPOKE &HFF8A32,aa%
  ' DPOKE &HFF8A34,&HFFFFF AND aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
RETURN
> PROCEDURE spran
  LPOKE s_mdb0%,d%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spelenx%
  LPOKE sd_md1%,144
  LPOKE sd_md2%,ADD(spelenx%,31)
  LPOKE sd_md3%,ADD(144,15)
  LPOKE sd_md4%,elenx%
  LPOKE sd_md5%,eleny%
  LPOKE sd_md6%,ADD(elenx%,31)
  LPOKE sd_md7%,ADD(eleny%,15)
  LPOKE sd_md8%,1
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  LPOKE s_mdb0%,d%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spelenx%
  LPOKE sd_md1%,128
  LPOKE sd_md2%,ADD(spelenx%,31)
  LPOKE sd_md3%,ADD(128,15)
  LPOKE sd_md4%,elenx%
  LPOKE sd_md5%,eleny%
  LPOKE sd_md6%,ADD(elenx%,31)
  LPOKE sd_md7%,ADD(eleny%,15)
  LPOKE sd_md8%,6
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  LPOKE s_mdb0%,c%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spelenx2%
  LPOKE sd_md1%,160
  LPOKE sd_md2%,ADD(spelenx2%,31)
  LPOKE sd_md3%,ADD(160,31)
  LPOKE sd_md4%,elenx2%
  LPOKE sd_md5%,eleny2%
  LPOKE sd_md6%,ADD(elenx2%,31)
  LPOKE sd_md7%,ADD(eleny2%,31)
  LPOKE sd_md8%,1
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  LPOKE s_mdb0%,c%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spelenx2%
  LPOKE sd_md1%,128
  LPOKE sd_md2%,ADD(spelenx2%,31)
  LPOKE sd_md3%,ADD(128,31)
  LPOKE sd_md4%,elenx2%
  LPOKE sd_md5%,eleny2%
  LPOKE sd_md6%,ADD(elenx2%,31)
  LPOKE sd_md7%,ADD(eleny2%,31)
  LPOKE sd_md8%,6
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  '
  LPOKE s_mdb0%,spe%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spx%
  LPOKE sd_md1%,64
  LPOKE sd_md2%,ADD(spx%,31)
  LPOKE sd_md3%,ADD(64,31)
  LPOKE sd_md4%,x%
  LPOKE sd_md5%,y%
  LPOKE sd_md6%,ADD(x%,31)
  LPOKE sd_md7%,ADD(y%,31)
  LPOKE sd_md8%,1
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
  '
  LPOKE s_mdb0%,spe%
  LPOKE s_mdb3%,20
  LPOKE s_mdb5%,4
  LPOKE d_mdb0%,a%
  LPOKE d_mdb3%,40
  LPOKE d_mdb5%,4
  LPOKE sd_md0%,spx%
  LPOKE sd_md1%,spy%
  LPOKE sd_md2%,ADD(spx%,31)
  LPOKE sd_md3%,ADD(spy%,31)
  LPOKE sd_md4%,x%
  LPOKE sd_md5%,y%
  LPOKE sd_md6%,ADD(x%,31)
  LPOKE sd_md7%,ADD(y%,31)
  LPOKE sd_md8%,6
  BITBLT s_mdb%(),d_mdb%(),sd_md%()
RETURN
> PROCEDURE sproff
  '
  '
  bxx%=DIV(rx%,16)
  '
  aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ry%,320))
  cc%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(96,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  bxx%=DIV(rxelen%,16)
  '
  aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ryelen%,320))
  cc%=ADD(ADD(d%,MUL(8,16)),MUL(128,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,16
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  bxx%=DIV(rxelen2%,16)
  '
  aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(ryelen2%,320))
  cc%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(160,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
RETURN
> PROCEDURE sproffb
  sproff
  '
  bxx%=DIV(rx%,16)
  '
  aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(ry%,320))
  cc%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(96,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  bxx%=DIV(rxelen%,16)
  '
  aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(ryelen%,320))
  cc%=ADD(ADD(d%,MUL(8,16)),MUL(128,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,16
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  bxx%=DIV(rxelen2%,16)
  '
  aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(ryelen2%,320))
  cc%=ADD(ADD(ecransauv%,MUL(8,16)),MUL(160,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,136
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,296
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,13
  DPOKE &HFF8A38,32
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
RETURN
> PROCEDURE lesotres
  dieq%=ADD(RAND(15),1)
  IF dieq%=1
    dyiq%=1
  ENDIF
  IF dieq%=2
    dyiq%=2
  ENDIF
  IF dieq%=3
    dxiq%=1
  ENDIF
  IF dieq%=4
    dxiq%=2
  ENDIF
  IF dieq%=5
    dyiq%=0
  ENDIF
  IF dieq%=6
    dxiq%=0
  ENDIF
  '
  grrr%=ADD(grrr%,1)
  IF grrr%>2000
    '
    IF elenx%<=x%
      '
      dxiq%=2
    ENDIF
    IF elenx%>x%
      '
      dxiq%=1
    ENDIF
    IF eleny%<=y%
      '
      dyiq%=2
    ENDIF
    IF eleny%>y%
      '
      dyiq%=1
    ENDIF
    '
    IF elenx%=x%
      dxiq%=0
    ENDIF
    IF eleny%=y%
      dyiq%=0
    ENDIF
  ENDIF
  '
  '
  IF dyiq%=1
    eleny%=SUB(eleny%,vteleny%)
    IF eleny%=<0
      eleny%=0
    ENDIF
  ENDIF
  '
  IF dyiq%=2
    eleny%=ADD(eleny%,vteleny%)
    IF eleny%=>384
      eleny%=384
    ENDIF
  ENDIF
  '
  IF dxiq%=1
    elenx%=SUB(elenx%,vtelenx%)
    IF elenx%=<0
      elenx%=0
    ENDIF
  ENDIF
  '
  IF dxiq%=2
    elenx%=ADD(elenx%,vtelenx%)
    IF elenx%=>608
      elenx%=608
    ENDIF
  ENDIF
  '
  dieq2%=ADD(RAND(15),1)
  IF dieq2%=1
    dyiq2%=1
  ENDIF
  IF dieq2%=2
    dyiq2%=2
  ENDIF
  IF dieq2%=3
    dxiq2%=1
  ENDIF
  IF dieq2%=4
    dxiq2%=2
  ENDIF
  IF dieq2%=5
    dyiq2%=0
  ENDIF
  IF dieq2%=6
    dxiq2%=0
  ENDIF
  '
  '
  grrr2%=ADD(grrr2%,2)
  IF grrr2%>4000
    '
    IF elenx2%<=x%
      '
      dxiq2%=2
    ENDIF
    IF elenx2%>x%
      '
      dxiq2%=1
    ENDIF
    IF eleny2%<=y%
      '
      dyiq2%=2
    ENDIF
    IF eleny2%>y%
      '
      dyiq2%=1
    ENDIF
    '
    '
    IF elenx2%=x%
      dxiq2%=0
    ENDIF
    IF eleny2%=y%
      dyiq2%=0
    ENDIF
    '
  ENDIF
  '
  '
  '
  '
  IF dyiq2%=1
    eleny2%=SUB(eleny2%,vteleny2%)
    IF eleny2%=<0
      eleny2%=0
    ENDIF
  ENDIF
  '
  IF dyiq2%=2
    eleny2%=ADD(eleny2%,vteleny2%)
    IF eleny2%=>368
      eleny2%=368
    ENDIF
  ENDIF
  '
  IF dxiq2%=1
    elenx2%=SUB(elenx2%,vtelenx2%)
    IF elenx2%=<0
      elenx2%=0
    ENDIF
  ENDIF
  '
  IF dxiq2%=2
    elenx2%=ADD(elenx2%,vtelenx2%)
    IF elenx2%=>608
      elenx2%=608
    ENDIF
  ENDIF
  '
  ' elenx2%=MOUSEX*2
  '  eleny2%=MOUSEY*2
  '
  '
  st%=0
  st%=PEEK(&HFFFC02)
  '
  rcx1%=x%
  rcy1%=y%
  rcxl1%=32
  rcyl1%=32
  '
  rcx2%=elenx%
  rcy2%=eleny%
  rcxl2%=32
  rcyl2%=16
  touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
  IF touch%=-1
    INC tomo%
    IF ADD(x%,16)<=ADD(elenx%,16)
      st%=4
      kia
    ENDIF
    IF ADD(x%,16)>ADD(elenx%,16)
      st%=8
      kia
    ENDIF
    '
    IF ADD(y%,16)<=eleny%
      haileu
      st%=0
      y%=SUB(y%,16)
      '      bonus
      IF y%<=0
        y%=0
      ENDIF
    ENDIF
    '
    SUB grrr%,320
  ENDIF
  '
  rcx1%=x%
  rcy1%=y%
  rcxl1%=32
  rcyl1%=32
  '
  rcx2%=elenx2%
  rcy2%=eleny2%
  rcxl2%=32
  rcyl2%=32
  touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
  IF touch%=-1
    INC tomo%
    IF ADD(x%,16)<ADD(elenx2%,16)
      st%=4
      kia
    ENDIF
    IF ADD(x%,16)=>ADD(elenx2%,16)
      st%=8
      kia
    ENDIF
    '
    IF ADD(y%,16)<=eleny2%
      haileu
      st%=0
      y%=SUB(y%,16)
      '      bonus
      IF y%<=0
        y%=0
      ENDIF
    ENDIF
    SUB grrr2%,160
  ENDIF
  '
  '
  '
  IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,16),16))=40 AND sat%=0
    rebond
    sat%=1
    satc%=32
    lan%=12
    man%=2
    zobanim%=1
    spx%=0
  ENDIF
  IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,16),16))=50 AND sat%=0
    rebond
    sat%=3
    satc%=32
    lan%=12
    man%=2
    spx%=0
    zobanim%=4
  ENDIF
  '
RETURN
> PROCEDURE moini
  '
  '
  spx%=0
  spy%=0
  x%=160
  y%=336
  rx%=x%
  ry%=y%
  '
  lan%=16
  man%=2
  '
  sat%=0
  st%=0
  vtx%=4
  vty%=4
  spe%=c%
  '
  elenx%=160
  eleny%=100
  vtelenx%=3
  vteleny%=3
  '
  vtlaelen%=21
  vtmanelen%=3
  '
  relenx%=elenx%
  releny%=eleny%
  SETMOUSE elenx%,eleny%
  spelenx%=0
  speleny%=128
  '
  elenx2%=100
  eleny2%=160
  vtelenx2%=2
  vteleny2%=2
  '
  vtlaelen2%=28
  vtmanelen2%=4
  '
  relenx2%=elenx2%
  releny2%=eleny2%
  spelenx2%=0
  speleny2%=128
  '
  '
RETURN
Avatar de l’utilisateur
leglod
 
Messages: 182
Inscription: Jeu 6 Nov 2008 22:33
Localisation: Montpellier (34) sud France

Re: [JEU] Pouifouf de Leglod :D

Messagede leglod » Sam 15 Nov 2008 21:07

Suite du listing ...

Code: Tout sélectionner
> PROCEDURE lavielamort
  INC tomi%
  IF tomi%>=1000
    tomi%=0
  ENDIF
  niarftomxy%=DIV(tomi%,100)
  '
  niarftomx%=MUL(SUB(niarftomxy%,MUL(DIV(niarftomxy%,5),5)),64)
  niarftomy%=ADD(MUL(DIV(niarftomxy%,5),8),160)
  '
  IF tomo%>=100
    tomo%=0
  ENDIF
  niatomoxy%=DIV(tomo%,10)
  '
  niatomox%=MUL(SUB(niatomoxy%,MUL(DIV(niatomoxy%,5),5)),64)
  niatomoy%=ADD(MUL(DIV(niatomoxy%,5),8),176)
RETURN
> PROCEDURE coucou
  .Whaddaya do if you want to call a -Megatizer- music in GfA-Basic ???
  .Peek at this...
  .Coded by Jedi of Sector One from The Heavy Killers
  .
  FILESELECT "\*.thk","",file$  ! Choose a file
  IF EXIST(file$)=0             ! Does it exist ???
    EDIT                        ! No => Back to the editor
  ENDIF
  .
  OPEN "i",#1,file$             ! Open the file
  len%=LOF(#1)                  ! Length of that file
  RESERVE FRE(0)-len%           ! Reserve a part of the memory
  music%=MALLOC(len%)           ! Define a buffer ( to put the music )
  BGET #1,music%,len%           ! Transfer the datas into the buffer
  CLOSE #1                      ! Close the file
  .
  ~XBIOS(&H26,L:music%)         ! Initialize the music
  SLPOKE &H4D2,music%+8         ! Play it at each VBL
  .
  KEYGET zzz%                   ! Wait for a key
  .
  SLPOKE &H4D2,0                ! Stop playing
  ~XBIOS(&H26,L:music%+4)       ! Switch off all voices and set back interrupts
  SPOKE &H484,15                ! Enable this fuckin' 'Bip' of the keyboard
  .
  ~MFREE(music%)                ! There's no use anymore
  EDIT                          ! Back to the editor or desktop
RETURN
> PROCEDURE delamuz
  .
  INLINE music%,14363
  .
  '  ~XBIOS(&H26,L:music%)         ! Initialize the music
  ' SLPOKE &H4D2,music%+8         ! Play it at each VBL
  .
  .
  '  SLPOKE &H4D2,0                ! Stop playing
  ' ~XBIOS(&H26,L:music%+4)       ! Switch off all voices and set back interrupts
  .
RETURN
> PROCEDURE apreslautre
  IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))<10 AND sat%=0 OR mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))>29 AND sat%=0
    y%=ADD(y%,vty%)
    IF y%>=368
      y%=368
    ENDIF
  ENDIF
  IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))=>10 AND sat%=0 AND mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))=<29 AND sat%=0
    y%=MUL(DIV(y%,16),16)
  ENDIF
  '
  IF st%=4 AND sat%=0
    x%=SUB(x%,vtx%)
    IF x%<=0
      x%=0
    ENDIF
  ENDIF
  IF st%=8 AND sat%=0
    x%=ADD(x%,vtx%)
    IF x%>=608
      x%=608
    ENDIF
  ENDIF
  '
  '
  IF zobanim%=1
    xzobanim%=MUL(DIV(ADD(x%,16),32),32)
    yzobanim%=ADD(MUL(DIV(y%,16),16),16)
    IF xzobanim<=0
      xzobanim=0
    ENDIF
    IF xzobanim>=608
      xzobanim=608
    ENDIF
    IF yzobanim<=0
      yzobanim=0
    ENDIF
    IF yzobanim>=176
      yzobanim=176
    ENDIF
    zobanim%=2
    czobanim%=0
    spxzobanim%=0
    spyzobanim%=64
    spzobanim%=0
  ENDIF
  IF zobanim%=2
    czobanim%=ADD(czobanim%,1)
    spxzobanim%=MUL(spzobanim%,32)
    IF czobanim%>=5
      zobanim%=3
    ENDIF
    '
    cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
    aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,144
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,304
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,9
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    spzobanim%=ADD(spzobanim%,1)
  ENDIF
  IF zobanim%=3
    czobanim%=ADD(czobanim%,1)
    spzobanim%=SUB(spzobanim%,1)
    IF spzobanim%<=0
      spzobanim%=0
    ENDIF
    spxzobanim%=MUL(spzobanim%,32)
    IF czobanim%>=10
      zobanim%=0
      '
      cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
      aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
      cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
      aa%=ADD(ADD(b%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
    ENDIF
    '
    '
    cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
    aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,144
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,304
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,9
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  IF zobanim%=4
    xzobanim%=MUL(DIV(ADD(x%,16),32),32)
    yzobanim%=ADD(MUL(DIV(y%,16),16),16)
    IF xzobanim<=0
      xzobanim=0
    ENDIF
    IF xzobanim>=608
      xzobanim=608
    ENDIF
    IF yzobanim<=0
      yzobanim=0
    ENDIF
    IF yzobanim>=176
      yzobanim=176
    ENDIF
    zobanim%=5
    czobanim%=0
    spxzobanim%=0
    spyzobanim%=80
    spzobanim%=0
  ENDIF
  IF zobanim%=5
    czobanim%=ADD(czobanim%,1)
    spxzobanim%=MUL(spzobanim%,32)
    IF czobanim%>=5
      zobanim%=6
    ENDIF
    '
    cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
    aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,144
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,304
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,9
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    spzobanim%=ADD(spzobanim%,1)
  ENDIF
  IF zobanim%=6
    czobanim%=ADD(czobanim%,1)
    spzobanim%=SUB(spzobanim%,1)
    IF spzobanim%<=0
      spzobanim%=0
    ENDIF
    spxzobanim%=MUL(spzobanim%,32)
    IF czobanim%>=10
      zobanim%=0
      '
      cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
      aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
      '
      '
      cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
      aa%=ADD(ADD(b%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,144
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,304
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,9
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
    cc%=ADD(ADD(e%,MUL(DIV(spxzobanim%,32),16)),MUL(spyzobanim%,160))
    aa%=ADD(ADD(a%,MUL(DIV(xzobanim%,32),16)),MUL(yzobanim%,320))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,144
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,304
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,9
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  IF sat%=1
    x%=ADD(x%,vtx%)
    y%=SUB(y%,vty%)
    satc%=SUB(satc%,1)
    IF satc%<=16
      sat%=2
    ENDIF
    IF y%<=0
      y%=0
    ENDIF
    IF x%>=608
      x%=608
    ENDIF
  ENDIF
  IF sat%=2
    x%=ADD(x%,vtx%)
    y%=ADD(y%,vty%)
    satc%=SUB(satc%,1)
    IF satc%<=0
      sat%=0
      lan%=32
      man%=4
    ENDIF
    IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))>=10 AND mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))<=29
      y%=MUL(DIV(y%,32),32)
      sat%=0
      spe%=c%
      lan%=32
      man%=4
    ENDIF
    IF y%>=368
      y%=368
    ENDIF
    IF x%>=608
      x%=608
    ENDIF
  ENDIF
  IF sat%=3
    x%=SUB(x%,vtx%)
    y%=SUB(y%,vty%)
    satc%=SUB(satc%,1)
    IF satc%<=16
      sat%=4
    ENDIF
    IF y%<=0
      y%=0
    ENDIF
    IF x%<=0
      x%=0
    ENDIF
  ENDIF
  IF sat%=4
    x%=SUB(x%,vtx%)
    y%=ADD(y%,vty%)
    satc%=SUB(satc%,1)
    IF satc%<=0
      sat%=0
      lan%=32
      man%=4
    ENDIF
    IF mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))>=10 AND mptab|(DIV(ADD(x%,16),32),DIV(ADD(y%,32),16))<=29
      y%=MUL(DIV(y%,32),32)
      sat%=0
      spe%=d%
      lan%=32
      man%=4
    ENDIF
    IF y%>=368
      y%=368
    ENDIF
    IF x%<=0
      x%=0
    ENDIF
  ENDIF
  IF dx%<x%
    spe%=c%
    IF sat%=1 OR sat%=2
      spe%=ADD(c%,5120)
    ENDIF
    INC an%
    spx%=MUL(DIV(an%,man%),32)
  ENDIF
  IF dx%>x%
    spe%=d%
    IF sat%=3 OR sat%=4
      spe%=ADD(d%,5120)
    ENDIF
    INC an%
    spx%=MUL(DIV(an%,man%),32)
  ENDIF
  dx%=x%
  IF an%=>lan%
    an%=0
    spx%=0
  ENDIF
  IF spx%<0
    spx%=0
  ENDIF
  '
  spelenx%=MUL(DIV(elenan%,vtmanelen%),32)
  INC elenan%
  IF elenan%=>vtlaelen%
    '
    elenan%=0
    spelenx%=0
    '
  ENDIF
  '
  spelenx2%=MUL(DIV(elenan2%,vtmanelen2%),32)
  INC elenan2%
  IF elenan2%=>vtlaelen2%
    '
    elenan2%=0
    spelenx2%=0
    '
  ENDIF
RETURN
> PROCEDURE prand
  cc%=ADD(ADD(a%,120),MUL(196,320))
  aa%=ADD(ADD(e%,0),MUL(192,160))
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,288
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,128
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  cc%=ADD(ADD(a%,168),MUL(196,320))
  aa%=ADD(ADD(e%,32),MUL(192,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,288
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,128
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
RETURN
> PROCEDURE mpini
  '
  s_mdb0%=V:s_mdb%(0)
  s_mdb3%=V:s_mdb%(3)
  s_mdb5%=V:s_mdb%(5)
  '
  d_mdb0%=V:d_mdb%(0)
  d_mdb3%=V:d_mdb%(3)
  d_mdb5%=V:d_mdb%(5)
  '
  sd_md0%=V:sd_md%(0)
  sd_md1%=V:sd_md%(1)
  sd_md2%=V:sd_md%(2)
  sd_md3%=V:sd_md%(3)
  sd_md4%=V:sd_md%(4)
  sd_md5%=V:sd_md%(5)
  sd_md6%=V:sd_md%(6)
  sd_md7%=V:sd_md%(7)
  sd_md8%=V:sd_md%(8)
  '
RETURN
> PROCEDURE machibibulchouette
  aa%=ADD(ADD(a%,120),MUL(196,320))
  cc%=ADD(ADD(e%,0),MUL(192,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,128
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,288
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  aa%=ADD(ADD(a%,168),MUL(196,320))
  cc%=ADD(ADD(e%,32),MUL(192,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,128
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,288
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  aa%=ADD(ADD(b%,120),MUL(196,320))
  cc%=ADD(ADD(e%,0),MUL(192,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,128
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,288
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
  '
  '
  '
  aa%=ADD(ADD(b%,168),MUL(196,320))
  cc%=ADD(ADD(e%,32),MUL(192,160))
  '
  DPOKE &HFF8A20,2
  DPOKE &HFF8A22,128
  LPOKE &HFF8A24,cc%
  DPOKE &HFF8A28,&HFFFF
  DPOKE &HFF8A2A,&HFFFF
  DPOKE &HFF8A2C,&H0
  DPOKE &HFF8A2E,2
  DPOKE &HFF8A30,288
  LPOKE &HFF8A32,aa%
  DPOKE &HFF8A36,17
  DPOKE &HFF8A38,8
  POKE &HFF8A3A,2
  POKE &HFF8A3B,3
  POKE &HFF8A3D,0
  POKE &HFF8A3C,&HF0
RETURN
> PROCEDURE carot1
  '
  '
  '
  IF kok%=0
    kak%=RAND(40)
    IF kak%=5
      kok%=1
      '      klax
      pom1
      pm1x%=ADD(RAND(624),1)
      pm1x%=MUL(DIV(pm1x%,16),16)
      pm1y%=0
      rpm1x%=pm1x%
      rpm1y%=pm1y%
      vtpm1y%=ADD(RAND(8),1)
      koko%=0
      koka%=0
    ENDIF
  ENDIF
  '
  IF kok%=1
    pm1y%=ADD(pm1y%,vtpm1y%)
    IF pm1y%>=384
      pm1y%=384
      koka%=1
    ENDIF
    '
    rcx1%=x%
    rcy1%=y%
    rcxl1%=32
    rcyl1%=32
    '
    rcx2%=pm1x%
    rcy2%=pm1y%
    rcxl2%=16
    rcyl2%=16
    touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
    IF touch%=-1
      '
      bonus
      koka%=1
      SUB tomo%,4
      SUB grrr%,320
      SUB grrr2%,160
      IF tomo%<=0
        tomo%=0
      ENDIF
      '
    ENDIF
  ENDIF
  '
  IF kok%=1 AND koko%=0
    ' MOUSE pm1x%,pm1y%,pmbt%
    '
    '    pm1x%=MUL(pm1x%,2)
    '   pm1y%=MUL(pm1y%,2)
    '
    '
    bxx%=DIV(rpm1x%,16)
    cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y%,320))
    aa%=ecransauv%
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,312
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,152
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
  ENDIF
RETURN
> PROCEDURE carot2
  IF kok%=1 AND koko%=0
    bxx%=DIV(pm1x%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y%,320))
    cc%=ADD(c%,136)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,1
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    bxx%=DIV(pm1x%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y%,320))
    cc%=ADD(c%,128)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,7
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
RETURN
> PROCEDURE carot3
  IF kok%=1 AND koko%=0
    bxx%=DIV(rpm1x%,16)
    '  aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y%,320))
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y%,320))
    cc%=ecransauv%
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    IF koka%=1
      koko%=1
      kok%=0
      bxx%=DIV(pm1x%,16)
      aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(pm1y%,320))
      cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,312
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,312
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,5
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
    rpm1x%=pm1x%
    rpm1y%=pm1y%
  ENDIF
RETURN
> PROCEDURE c1arot1
  '
  '
  '
  IF kok1%=0
    kak1%=RAND(40)
    IF kak1%=5
      kok1%=1
      ' klax
      pom2
      pm1x1%=ADD(RAND(624),1)
      pm1x1%=MUL(DIV(pm1x1%,16),16)
      pm1y1%=0
      rpm1x1%=pm1x1%
      rpm1y1%=pm1y1%
      vtpm1y1%=ADD(RAND(8),1)
      koko1%=0
      koka1%=0
    ENDIF
  ENDIF
  '
  IF kok1%=1
    pm1y1%=ADD(pm1y1%,vtpm1y1%)
    IF pm1y1%>=384
      pm1y1%=384
      koka1%=1
    ENDIF
    '
    rcx1%=x%
    rcy1%=y%
    rcxl1%=32
    rcyl1%=32
    '
    rcx2%=pm1x1%
    rcy2%=pm1y1%
    rcxl2%=16
    rcyl2%=16
    touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
    IF touch%=-1
      '
      bonus
      koka1%=1
      SUB tomo%,4
      SUB grrr%,320
      SUB grrr2%,160
      IF tomo%<=0
        tomo%=0
      ENDIF
      '
    ENDIF
  ENDIF
  '
  IF kok1%=1 AND koko1%=0
    '
    '
    bxx%=DIV(rpm1x1%,16)
    cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y1%,320))
    aa%=ADD(ecransauv%,8)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,312
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,152
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
  ENDIF
RETURN
> PROCEDURE c1arot2
  IF kok1%=1 AND koko1%=0
    bxx%=DIV(pm1x1%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y1%,320))
    cc%=ADD(c%,2696)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,1
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    bxx%=DIV(pm1x1%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y1%,320))
    cc%=ADD(c%,2688)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,7
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
RETURN
> PROCEDURE c1arot3
  IF kok1%=1 AND koko1%=0
    bxx%=DIV(rpm1x1%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y1%,320))
    cc%=ADD(ecransauv%,8)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    IF koka1%=1
      koko1%=1
      kok1%=0
      bxx%=DIV(pm1x1%,16)
      aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(pm1y1%,320))
      cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y1%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,312
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,312
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,5
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
    rpm1x1%=pm1x1%
    rpm1y1%=pm1y1%
  ENDIF
RETURN
> PROCEDURE c2arot1
  '
  '
  '
  IF kok2%=0
    kak2%=RAND(40)
    IF kak2%=5
      kok2%=1
      '      klax
      pom3
      pm1x2%=ADD(RAND(624),1)
      pm1x2%=MUL(DIV(pm1x2%,16),16)
      kochi%=MUL(RAND(10),16)
      pm1y2%=0
      rpm1x2%=pm1x2%
      rpm1y2%=pm1y2%
      vtpm1y2%=ADD(RAND(8),1)
      koko2%=0
      koka2%=0
    ENDIF
  ENDIF
  '
  IF kok2%=1
    pm1y2%=ADD(pm1y2%,vtpm1y2%)
    IF pm1y2%>=384
      pm1y2%=384
      koka2%=1
    ENDIF
    '
    rcx1%=x%
    rcy1%=y%
    rcxl1%=32
    rcyl1%=32
    '
    rcx2%=pm1x2%
    rcy2%=pm1y2%
    rcxl2%=16
    rcyl2%=16
    touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
    IF touch%=-1
      '
      bonus
      koka2%=1
      SUB tomo%,4
      SUB grrr%,320
      SUB grrr2%,160
      IF tomo%<=0
        tomo%=0
      ENDIF
      '
    ENDIF
  ENDIF
  '
  IF kok2%=1 AND koko2%=0
    '
    '
    bxx%=DIV(rpm1x2%,16)
    cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y2%,320))
    aa%=ADD(ecransauv%,16)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,312
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,152
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
  ENDIF
RETURN
> PROCEDURE c2arot2
  IF kok2%=1 AND koko2%=0
    bxx%=DIV(pm1x2%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y2%,320))
    '    cc%=ADD(c%,2696)
    cc%=ADD(c%,ADD(136,MUL(kochi%,160)))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,1
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    bxx%=DIV(pm1x2%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y2%,320))
    cc%=ADD(c%,2688)
    cc%=ADD(c%,ADD(128,MUL(kochi%,160)))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,7
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
RETURN
> PROCEDURE c2arot3
  IF kok2%=1 AND koko2%=0
    bxx%=DIV(rpm1x2%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y2%,320))
    cc%=ADD(ecransauv%,16)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    IF koka2%=1
      koko2%=1
      kok2%=0
      bxx%=DIV(pm1x2%,16)
      aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(pm1y2%,320))
      cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y2%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,312
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,312
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,5
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
    rpm1x2%=pm1x2%
    rpm1y2%=pm1y2%
  ENDIF
RETURN
> PROCEDURE c3arot1
  '
  '
  '
  IF kok3%=0
    kak3%=RAND(40)
    IF kak3%=5
      kok3%=1
      '      klax
      pom4
      pm1x3%=ADD(RAND(624),1)
      pm1x3%=MUL(DIV(pm1x3%,16),16)
      pm1y3%=0
      rpm1x3%=pm1x3%
      rpm1y3%=pm1y3%
      cochi2%=MUL(RAND(10),16)
      vtpm1y3%=ADD(RAND(8),1)
      koko3%=0
      koka3%=0
    ENDIF
  ENDIF
  '
  IF kok3%=1
    pm1y3%=ADD(pm1y3%,vtpm1y3%)
    IF pm1y3%>=384
      pm1y3%=384
      koka3%=1
    ENDIF
    '
    rcx1%=x%
    rcy1%=y%
    rcxl1%=32
    rcyl1%=32
    '
    rcx2%=pm1x3%
    rcy2%=pm1y3%
    rcxl2%=16
    rcyl2%=16
    touch%=RC_INTERSECT(rcx1%,rcy1%,rcxl1%,rcyl1%,rcx2%,rcy2%,rcxl2%,rcyl2%)
    IF touch%=-1
      '
      bonus
      koka3%=1
      SUB tomo%,4
      SUB grrr%,320
      SUB grrr2%,160
      IF tomo%<=0
        tomo%=0
      ENDIF
      '
    ENDIF
  ENDIF
  '
  IF kok3%=1 AND koko3%=0
    '
    '
    bxx%=DIV(rpm1x3%,16)
    cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y3%,320))
    aa%=ADD(ecransauv%,24)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,312
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,152
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
  ENDIF
RETURN
> PROCEDURE c3arot2
  IF kok3%=1 AND koko3%=0
    bxx%=DIV(pm1x3%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y3%,320))
    '    cc%=ADD(c%,2696)
    cc%=ADD(c%,ADD(136,MUL(cochi2%,160)))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,1
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    '
    bxx%=DIV(pm1x3%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y3%,320))
    '    cc%=ADD(c%,2688)
    cc%=ADD(c%,ADD(128,MUL(cochi2%,160)))
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,7
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
RETURN
> PROCEDURE c3arot3
  IF kok3%=1 AND koko3%=0
    bxx%=DIV(rpm1x3%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y3%,320))
    cc%=ADD(ecransauv%,24)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    IF koka3%=1
      koko3%=1
      kok3%=0
      bxx%=DIV(pm1x3%,16)
      aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(pm1y3%,320))
      cc%=ADD(ADD(a%,MUL(bxx%,8)),MUL(pm1y3%,320))
      '
      DPOKE &HFF8A20,2
      DPOKE &HFF8A22,312
      LPOKE &HFF8A24,cc%
      DPOKE &HFF8A28,&HFFFF
      DPOKE &HFF8A2A,&HFFFF
      DPOKE &HFF8A2C,&H0
      DPOKE &HFF8A2E,2
      DPOKE &HFF8A30,312
      LPOKE &HFF8A32,aa%
      DPOKE &HFF8A36,5
      DPOKE &HFF8A38,16
      POKE &HFF8A3A,2
      POKE &HFF8A3B,3
      POKE &HFF8A3D,0
      POKE &HFF8A3C,&HF0
    ENDIF
    '
    rpm1x3%=pm1x3%
    rpm1y3%=pm1y3%
  ENDIF
RETURN
> PROCEDURE confidoiedecanar
  IF kok%=1 AND koko%=0
    bxx%=DIV(rpm1x%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y%,320))
    cc%=ecransauv%
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    bxx%=DIV(rpm1x%,16)
    aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(rpm1y%,320))
    cc%=ecransauv%
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  IF kok1%=1 AND koko1%=0
    bxx%=DIV(rpm1x1%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y1%,320))
    cc%=ADD(ecransauv%,8)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    bxx%=DIV(rpm1x1%,16)
    aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(rpm1y1%,320))
    cc%=ADD(ecransauv%,8)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  IF kok2%=1 AND koko2%=0
    bxx%=DIV(rpm1x2%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y2%,320))
    cc%=ADD(ecransauv%,16)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    bxx%=DIV(rpm1x2%,16)
    aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(rpm1y2%,320))
    cc%=ADD(ecransauv%,16)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
  IF kok3%=1 AND koko3%=0
    bxx%=DIV(rpm1x3%,16)
    aa%=ADD(ADD(a%,MUL(bxx%,8)),MUL(rpm1y3%,320))
    cc%=ADD(ecransauv%,24)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
    bxx%=DIV(rpm1x3%,16)
    aa%=ADD(ADD(b%,MUL(bxx%,8)),MUL(rpm1y3%,320))
    cc%=ADD(ecransauv%,24)
    '
    DPOKE &HFF8A20,2
    DPOKE &HFF8A22,152
    LPOKE &HFF8A24,cc%
    DPOKE &HFF8A28,&HFFFF
    DPOKE &HFF8A2A,&HFFFF
    DPOKE &HFF8A2C,&H0
    DPOKE &HFF8A2E,2
    DPOKE &HFF8A30,312
    LPOKE &HFF8A32,aa%
    DPOKE &HFF8A36,5
    DPOKE &HFF8A38,16
    POKE &HFF8A3A,2
    POKE &HFF8A3B,3
    POKE &HFF8A3D,0
    POKE &HFF8A3C,&HF0
  ENDIF
RETURN
'
> PROCEDURE pom1
  IF dacson%=1
    @convert_ste(ADD(pom1%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(pom1%,7164),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 0
  ENDIF
  '
RETURN
> PROCEDURE pom2
  IF dacson%=1
    @convert_ste(ADD(pom2%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(pom2%,3644),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 0
  ENDIF
  '
RETURN
> PROCEDURE pom3
  IF dacson%=1
    @convert_ste(ADD(pom3%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(pom3%,5628),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 0
  ENDIF
  '
RETURN
> PROCEDURE pom4
  IF dacson%=1
    @convert_ste(ADD(pom4%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(pom4%,3308),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 0
  ENDIF
  '
RETURN
> PROCEDURE haileu
  IF dacson%=1
    @convert_ste(ADD(haileu%,38),daca%,dacb%,dacc%)
    POKE &HFF8903,daca%
    POKE &HFF8905,dacb%
    POKE &HFF8907,dacc%
    convert_ste(ADD(haileu%,11131),daca%,dacb%,dacc%)
    POKE &HFF890F,daca%
    POKE &HFF8911,dacb%
    POKE &HFF8913,dacc%
    DPOKE &HFF8900,0
    DPOKE &HFF8900,1
    DPOKE &HFF8920,&H80 OR 1
  ENDIF
  '
RETURN
'
> PROCEDURE pom11
  @convert_ste(ADD(pom1%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(pom1%,7164),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 0
  '
RETURN
> PROCEDURE pom22
  @convert_ste(ADD(pom2%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(pom2%,3644),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 0
  '
RETURN
> PROCEDURE pom33
  @convert_ste(ADD(pom3%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(pom3%,5628),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 0
  '
RETURN
> PROCEDURE pom44
  @convert_ste(ADD(pom4%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(pom4%,3308),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 0
  '
RETURN
> PROCEDURE haileuu
  @convert_ste(ADD(haileu%,38),daca%,dacb%,dacc%)
  SPOKE &HFF8903,daca%
  SPOKE &HFF8905,dacb%
  SPOKE &HFF8907,dacc%
  convert_ste(ADD(haileu%,11131),daca%,dacb%,dacc%)
  SPOKE &HFF890F,daca%
  SPOKE &HFF8911,dacb%
  SPOKE &HFF8913,dacc%
  SDPOKE &HFF8900,0
  SDPOKE &HFF8900,1
  SDPOKE &HFF8920,&H80 OR 1
  '
RETURN
'
'
'


Ca manque d'optimisation mais deja la ca rentre a l'aise en un VBL meme en 60 hz ! Dans l'archive il ya un petit programme du nom de vagamoi.prg qui affiche des rasters c'est sympa avant le jeu mais du coup ca ne tien plus en une VBL !
Avatar de l’utilisateur
leglod
 
Messages: 182
Inscription: Jeu 6 Nov 2008 22:33
Localisation: Montpellier (34) sud France


Retourner vers Jeux

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron