[ASM] Snake en assembleur
Re: Snake en assembleur
Nice, tu vois quand tu veux
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.
Unis par la flèche sacrée de cupidon
Unis par la flèche sacrée de cupidon
-
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 1160
- Images: 4
- Inscription: 08 Déc 2014, 17:38
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: Ensimag
- GitHub: MathisLav
Re: Snake en assembleur
Voici la suite de la partie tête, qui fonctionne (merci à Epharius pour avoir élucidée le bogue mystérieux). Cette routine permet des faire les rotations du corps du serpent juste après la tête.
https://pastebin.com/E4hQCvQZ
C'est beau quant ça fonctionne .
https://pastebin.com/E4hQCvQZ
C'est beau quant ça fonctionne .
(21:48:26) Hamza.S: Dark_coco : tu a écris 2 phrases sans faute
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
-
Dark cocoProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Messages: 95
- Inscription: 15 Jan 2017, 14:39
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: dut gte
Re: Snake en assembleur
Bonjour,
La partie du moteur du snake est enfin terminée après plusieurs longs et fastidieux bugs.
Si cette partie comprend des bug n'hésité pas à en faire pars.
Avant de pouvoir songer à la mettre en ligne il me reste les scores et une sauvegarde de la parti. Par contre pour sauvegarder les scores je n'ai aucune idée de comment et avec quel moyen on peut le faire sinon pour sauvegarder la partie, cela rejoint le problème des scores.
Sinon voilà une capture:
Bon lors de l'enregistrement j'étais mauvais .
Et voilà le code actuelle (pour ceux qui son curieux ) :
https://pastebin.com/XihNCTZb
La partie du moteur du snake est enfin terminée après plusieurs longs et fastidieux bugs.
Si cette partie comprend des bug n'hésité pas à en faire pars.
Avant de pouvoir songer à la mettre en ligne il me reste les scores et une sauvegarde de la parti. Par contre pour sauvegarder les scores je n'ai aucune idée de comment et avec quel moyen on peut le faire sinon pour sauvegarder la partie, cela rejoint le problème des scores.
Sinon voilà une capture:
Bon lors de l'enregistrement j'étais mauvais .
Et voilà le code actuelle (pour ceux qui son curieux ) :
https://pastebin.com/XihNCTZb
(21:48:26) Hamza.S: Dark_coco : tu a écris 2 phrases sans faute
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
-
Dark cocoProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Messages: 95
- Inscription: 15 Jan 2017, 14:39
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: dut gte
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Messages: 41908
- Images: 15444
- Inscription: 25 Oct 2008, 00:00
- Localisation: Montpellier
- Genre:
- Calculatrice(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter/X: critor2000
- GitHub: critor
-
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 3446
- Images: 75
- Inscription: 04 Juil 2014, 14:40
- Localisation: Clermont-Ferrand 63
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: ENS Rennes
- GitHub: Ti64CLi
Re: Snake en assembleur
Bon j'ai rapidement repris le développement du snake.
Il y a maintenant l'affichage des score et un page pour le game over
voici la page du game over
Bon par contre j’aurais des petites questions:
Comment utilise une appvars, comment on la localise dans la ram? TheMachine02 m'avait renseigné mais j'ai perdu ma note que j'avais prise.
Il y a maintenant l'affichage des score et un page pour le game over
voici la page du game over
Bon par contre j’aurais des petites questions:
Comment utilise une appvars, comment on la localise dans la ram? TheMachine02 m'avait renseigné mais j'ai perdu ma note que j'avais prise.
(21:48:26) Hamza.S: Dark_coco : tu a écris 2 phrases sans faute
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
-
Dark cocoProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Messages: 95
- Inscription: 15 Jan 2017, 14:39
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: dut gte
Re: Snake en assembleur
Très beau ton game over screen
Globalement, pour détecter une appv, il faut d'abord charger le nom en OP1 (_mov9toOP1) puis exécuter un call système qui sert à détecter une variable (_ChkFindSym). Le nom doit être de la forme suivante :
Si la variable est archivée, alors les données ne sont pas les données directes de l'appv, puisque que tu as un header de 9 octets suivit de la taille du nom de l'appv, puis le nom de l'appv, puis 2 octets donnant la taille de l'appv.
Un simple code pour localiser une appv et retourner en hl l'adresse des données peut être le suivant :
A noter cependant que ce code ne désarchive pas l'appvar, donc si elle est en archive, l'écriture sera impossible. Par contre, tu peux désarchiver facilement une variable avec un autre call système Arc_Unarc qui swap le status de l'appvar entre archive/RAM (cf wikiti : http://wikiti.brandonw.net/index.php?ti ... CALLs:4FD8 )
Globalement, pour détecter une appv, il faut d'abord charger le nom en OP1 (_mov9toOP1) puis exécuter un call système qui sert à détecter une variable (_ChkFindSym). Le nom doit être de la forme suivante :
- Code: Tout sélectionner
.db AppVarObj, "NAME",0
Si la variable est archivée, alors les données ne sont pas les données directes de l'appv, puisque que tu as un header de 9 octets suivit de la taille du nom de l'appv, puis le nom de l'appv, puis 2 octets donnant la taille de l'appv.
Un simple code pour localiser une appv et retourner en hl l'adresse des données peut être le suivant :
- Code: Tout sélectionner
call _mov9toOP1
call _ChkFindSym
ret c
call _ChkInRam
ex de,hl
jr z, AppVarUnarchived
ld de, 9
add hl, de
ld e, (hl)
add hl, de
inc hl
AppVarUnarchived:
inc hl
inc hl
A noter cependant que ce code ne désarchive pas l'appvar, donc si elle est en archive, l'écriture sera impossible. Par contre, tu peux désarchiver facilement une variable avec un autre call système Arc_Unarc qui swap le status de l'appvar entre archive/RAM (cf wikiti : http://wikiti.brandonw.net/index.php?ti ... CALLs:4FD8 )
-
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 341
- Images: 0
- Inscription: 16 Jan 2013, 18:27
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: Médecine
Re: Snake en assembleur
bon le programme est enfin fini .
Mais bon il fais 28 ko donc il ne sortira pas aujourd'hui.
Mais bon il fais 28 ko donc il ne sortira pas aujourd'hui.
(21:48:26) Hamza.S: Dark_coco : tu a écris 2 phrases sans faute
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
(19:15:10) Hayleia: ah ça je confirme que t'as appris à écrire à l'école de baptiste_leprovost
-
Dark cocoProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Messages: 95
- Inscription: 15 Jan 2017, 14:39
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: dut gte
Re: Snake en assembleur
Et les statistiques ?
-
clifwardMembre UPECS
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 593
- Images: 6
- Inscription: 20 Sep 2015, 17:50
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: CentraleSupelec
-
MMBCModo
Niveau 15: CC (Chevalier des Calculatrices)- Messages: 107
- Images: 1
- Inscription: 16 Mai 2017, 19:20
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: Ex prof
- YouTube: Eyone
- Facebook: Emma Cadet
Retourner vers Langages alternatifs
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités