Logicielsmoto.com

Nous sommes le 28 Mar 2024, 23:18

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 108 messages ]  Aller à la page Précédente  1, 2, 3, 4, 5, 6, 7, 8  Suivante
Auteur Message
MessagePosté: 07 Juin 2022, 22:53 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Samuel Devulder a écrit:
C'est le basic qui te dis division par zero?
Sinon le coup de multiplier B par XMAX et diviser par 256 pour avoir un nombre entre 0 et XMAX-1 est une bonne idée. Par contre RND1 peut être optimisé: on a pas besoin de charger SEED car RND0 le retourne déjà. Que penses-tu de ceci?
Code:
 ORG $8080
RND1 *
 JSR RND0
 LDA YMAX
 MUL
 STB ,-S
 JSR RND0
 LDA XMAX
 MUL
 PULS B,PC
Je n'écris plus dans RANDRES car le résultat est déjà dans D à la sortie (on a qu'à faire STD RANDRES depuis l'appellant si on a besoin).


Ya pas besoin de rediviser par 256 puisque le résultat est dans A.

Sinon on voit que tu as l'habitude avec les piles et d'optimiser au cycle près, moi je préfère utiliser des noms de variables que je sache où j'en suis (je n'ai pas 20 ans d'expérience en assembleur 6809 LOL).

De toutes façon faut d'abord que j'optimise la partie "cascade" parce que je peux y mettre des adressages directs au lieu d'étendus et que je vois si je peux avoir 256 octet pour cette partie làç du code.

Mais déjà le résultat est vraiment très rapide et j'en espérais pas tant.

Bon je vais me reposer, inutile de dire que ça m'angoissais ce code de cascade que je n'arivais pas à résoudre et tout ça est une question de bon adressage ou pas (et pas d'algorithme). Et inutile de dire que je me sens bcp plus serin ce soir.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 08 Juin 2022, 07:33 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
.. sortir une valeur de A revient à diviser D par 256 ;)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 08 Juin 2022, 08:29 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Samuel Devulder a écrit:
.. sortir une valeur de A revient à diviser D par 256 ;)


Mouai mais ya pas de division de faite en assembleur...

As tu testé le jeu Samuel ?


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 08 Juin 2022, 12:02 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
là je suis au taf, c'est délicat :)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 08 Juin 2022, 23:10 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Bon je suis rentré du taf et ai testé sous TEO 1.7.7.

Déjà, ca fonctionne :) TEO(*) à l'avantage de ne pas montrer la souris. C'est plus stylé que DCMOTO qui finalement affiche deux pointeurs (celui du jeu et celui de windows/linux).

Après j'ai quelques soucis de visibilités (ok je vois pas bien, mais quand même). Le 3 jaune sur le fond "jaunâtre" est pour moi difficile à lire. Cependant j'aime bien le fond jaunâtre uniforme des 0.

J'ai aussi un soucis de visibilité flèche blanche sur les cases grises. J'ai du mal à la voir (le gris est très clair chez moi). Peut-être que si la flèche était plus épaisse que le quadrillage blanc je la verrais mieux, ou à l'inverse que le cadrillage soir noir sur gris plutôt que blanc sur gris pour les cases non découvertes. C'est vrai que la flèche noir se voit bien, en particulier sur les larges zones à 0, mais le cadrillage blanc donne un effet 3D. A voir ce qui a le meilleure contraste: souris + grosse ou couleur forme noir.

Par ailleurs j'ai quelques soucis à ne pas trop bouger la souris quand je click sur les grosses grilles: les cases 8x8 sont petites à l'écran et j'ai pas une stabilité exceptionnelle de la souris. As tu prévu un mode sans la souris dans lequel on puisse bouger la flèche au clavier en la faisant déplacer de 8 pix horiz/verti à partir du point (4,4) pointeur souris au clavier ?

Toujours avec mon doigt rémanent à droite (ouais je suis pas gâté), le click-droit fait pas mal de faux-rebonds chez moi. Donc je pose un drapeau et dans la 1/2 seconde qui suit le faux rebond le retire. C'est chiant. Pour moi l'idéal serait de pouvoir jouer au clavier avec les flèches et return/space pour poser un drapeau/découvrir la zone. Au moins avec le clavier j'ai pas de faux rebonds.

Voilà c'est tout pour ce soir.

sam.
_____
(*) TEO est dispo pour linux (lien), tu devrais essayer. Il a un mode "vitesse fond" bien plus rapide que DCMOTO et sait lire les fichiers SAP comme les FD.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 08 Juin 2022, 23:50 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Samuel Devulder a écrit:
Pour moi l'idéal serait de pouvoir jouer au clavier avec les flèches et return/space pour poser un drapeau/découvrir la zone. Au moins avec le clavier j'ai pas de faux rebonds.
Hmmm j'ai pas pu m'empêcher :oops: Regardes ce que fait ce petit patch dans ton code:
Code:
600 'TRAITEMENT DE LA SOURIS
610 CONSOLE,,3 : SHOW 1
611 INMOUSE XMOUS2,YMOUS2 : XKEY=ASC(INKEY$+CHR$(0))
612 IF XMOUS2>=0 THEN XMOUS=XMOUS2:YMOUS=YMOUS2 ELSE IF XKEY>0 THEN XMOUS=4+8*(OLDXMOUS@8+(XKEY=8)-(XKEY=9)): YMOUS=4+8*(OLDYMOUS@8-(XKEY=10)+(XKEY=11)) ELSE 611
613 IF XMOUS<>OLDXMOUS OR YMOUS<>OLDYMOUS THEN TURTLE0,XMOUS,YMOUS:OLDXMOUS=XMOUS:OLDYMOUS=YMOUS
620 CLICMOUS=MTRIG(0)+2*MTRIG(1)+(XKEY=13)+2*(XKEY=32) : IF CLICMOUS=0 THEN 699
Moi, ca me change la vie :D

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 00:26 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Ah sinon je suis tombé sur un bug. J'ai par accident mis un drapeau au milieu d'une zone non découverte.
Fichier(s) joint(s):
dcmoto05.png
dcmoto05.png [ 2.11 Kio | Vu 4486 fois ]
Puis j'ai right click pas loin ce qui a fait découvrir une grosse zone de 0 et effacer le drapeau.
Fichier(s) joint(s):
dcmoto06.png
dcmoto06.png [ 2.38 Kio | Vu 4486 fois ]
Pourtant le compteur de drapeau en haut affichait toujours 1 alors que plus aucun drapeau n'était visible à l'écran. Il a été effacé par la routine de découverte en cascade en ASM (on a un 2 à la place).

Il faudrait que cette routine n'efface pas les drapeaux, ou les réaffiche à la fin de la découverte, ou encore restitue les drapeaux découverts dans le compteur du haut.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 12:56 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Samuel Devulder a écrit:
Ah sinon je suis tombé sur un bug. J'ai par accident mis un drapeau au milieu d'une zone non découverte.
Fichier(s) joint(s):
dcmoto05.png
Puis j'ai right click pas loin ce qui a fait découvrir une grosse zone de 0 et effacer le drapeau.
Fichier(s) joint(s):
dcmoto06.png
Pourtant le compteur de drapeau en haut affichait toujours 1 alors que plus aucun drapeau n'était visible à l'écran. Il a été effacé par la routine de découverte en cascade en ASM (on a un 2 à la place).

Il faudrait que cette routine n'efface pas les drapeaux, ou les réaffiche à la fin de la découverte, ou encore restitue les drapeaux découverts dans le compteur du haut.


Bien vu!! En effet, la routine affiche les cases quand le statut est différent de "0" (c'est à dire quand c'est 1 ou 2), je n'avais pas prévu ça... Je vais prendre l'option la plus simple finalement (garder le drapeau...il suffit qu'au lieu de tester si c'est différent de 0, ça soit égal à 2 et ça rajoutera une iknstruction assembleur...).

Correction effectuée.

Alors pour être plus complet, en ASS, il y a 2 tableaux:
- celui situé entre $9000 et $91ff : contient les valeurs "ASCII" des chiffres (48 à 57) ou 130 qui est le caractère GR$ d'une bombe. Une grille ne peut pas avoir plus de 512 cases donc.
- celui situé entre $9200 et $93ff : conytient le statut de la case (2 pour "case grise", 1 pour "drapeau" et 0 pour "découvert" et donc là, plus aucune action possible sur ladite case)


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 13:30 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Il y a aussi un bug dans le jeu par rapport à la souris, c'est quand on clique soit dans la rangée de buisson du haut, soit celle de gauche, ça agit comme si on cliquait sur une des cases en dessous ou à droite... alors que normalement, ça ne devrait pas. Ce bug n'apparait pas quand on clic dans la haie de droite ou du bas

j'ai écrit ce code Basic qui concerne cette partie

Code:
630 X=(XMOUS-8*XOFFSET)@(8-8*(carsize0=1)): Y=(YMOUS-8*YOFFSET)@(8-8*(carsize0=1)): IF X>XMAX OR Y>YMAX OR X<0 OR Y<0 THEN 699


Xoffset et YOffset étant le décalage de la grille par rapport au point 0,0. Et carsize0 est à 0 si les caractère sont en taille simple, et à 1 si c'est double. XMOUS et YMOUS donne la position du pointeur de souris.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 14:13 
Hors ligne
M. DCMOTO

Inscription: 06 Juin 2004, 08:23
Messages: 681
Localisation: Provence (France)
Samuel Devulder a écrit:
TEO(*) à l'avantage de ne pas montrer la souris. C'est plus stylé que DCMOTO qui finalement affiche deux pointeurs (celui du jeu et celui de windows/linux).

A partir de la version de développement 2022.06.09 de dcmoto, une nouvelle option permet d'afficher ou de cacher le pointeur Windows dans l'écran Thomson.
Ce pointeur Windows est inutile quand le programme Thomson affiche son propre pointeur. Par contre il est indispensable si le programme n'affiche rien. C'est souvent le cas des programmes et jeux MO5 et TO7/70 utilisant le crayon optique.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 14:41 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Daniel Coulom a écrit:
Samuel Devulder a écrit:
TEO(*) à l'avantage de ne pas montrer la souris. C'est plus stylé que DCMOTO qui finalement affiche deux pointeurs (celui du jeu et celui de windows/linux).

A partir de la version de développement 2022.06.09 de dcmoto, une nouvelle option permet d'afficher ou de cacher le pointeur Windows dans l'écran Thomson.
Ce pointeur Windows est inutile quand le programme Thomson affiche son propre pointeur. Par contre il est indispensable si le programme n'affiche rien. C'est souvent le cas des programmes et jeux MO5 et TO7/70 utilisant le crayon optique.


Je n'utilise que DC Moto sous Linux vu que l'ancien émulateur TEO n'a plus de site internet et que ça ne fonctionnait pas sous Linux 64 bits (j'avais changé de version)

Mais pour en revenir à DC Moto, il y a plusieurs programmes qui ne semblent plus fonctionner avec la version du 8/05/2021 et qui fonctionnaient avec la version de 2018 : Assembleur 3 fait partie de ceux là mais c'est pas le seul. Il y a eu plusieurs jeux qui ne semblaient plus ofnctionner avec cette version de 2021... Je ne les ai pas noté. Mais c'est pour ça que je suis onligé d'utiliser la version de 2018, notamment pour l'Asembleur 3.0 de Prehisto.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 17:31 
Hors ligne
M. DCMOTO

Inscription: 06 Juin 2004, 08:23
Messages: 681
Localisation: Provence (France)
Ces très anciennes versions de l'émulateur dcmoto ont des bugs et ne sont plus maintenues depuis longtemps.
Je maintiens uniquement la dernière version officielle et les versions de développement postérieures.
La plupart des bugs signalés sont corrigés dans les 24h, par contre s'ils ne sont pas signalés ils ne seront jamais corrigés.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 17:37 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Daniel Coulom a écrit:
Ces très anciennes versions de l'émulateur dcmoto ont des bugs et ne sont plus maintenues depuis longtemps.
Je maintiens uniquement la dernière version officielle et les versions de développement postérieures.
La plupart des bugs signalés sont corrigés dans les 24h, par contre s'ils ne sont pas signalés ils ne seront jamais corrigés.


2021 c'est pas vieux Daniel et c'est une version postérieure à celle de 2018 qui n'avait pas ces bugs (je ne comprend pas comment une version plus récente ne permet plus d'utiliser des logiciels Thomson comme Assembleur 3.0) bon bref, j'imagine que ça ne dois pas être simple de faire la gestion des bugs pour un tel logiciel. Je vais télécharger la dernière version alors.

MERCI à toi pour DC MOTO, c'est vraiment un truc super! Il est même meilleur que Xroar, l'émulateur des TRS 80 Coco.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 17:38 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
C'est super qu'on puisse cacher le curseur sous DCMoto :jap: . Ainsi les vidéos de Neotenien sur Démineur n'auront plus l'impression d'avoir la berlue avec un curseur en double.

Je savais pas que Teo ne marchais pas sous linux 64bits. J'aurais cru qu'avec les packages i386 installés par
Code:
sudo apt-get install multiarch-support
ca devrait aller. Ca ne dois pas être compliqué à corriger.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 09 Juin 2022, 17:42 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Voici un planning que j'ai prévu pour le déroulement du jeu "Mission Faunix : Demineur Xtreme". QU'en pensez vous ?

Organisation logiciel
---------------------
1/ Choix langue (Inclusion de Basic dans la langue appropriée)
2/ Entrez votre nom (au moins 5 caractères) : obligatoire pour le jeu (dont le tableau des scores)
3/ Choix entre "Challenge" "Aventure", "Règles du jeu"
3a/ Mode challenge : choix entre le niveau (o-9a-f), ou "retour"
3aa/ Choix entre "Jouer" ou "Voir les scores"
3aaa/ Le jeu
3aab/ Tableau des scores (sur D7), une option "effacer tableau" remet à zéro ces scores avant de revenir en 3a

3aaa/ Tirage aléatoire d'une des 10 images de fond, création du tableau et jeu

3ab/ Règles du jeu : Avec Angus Mc Donner de la fondation Faunix

3b/ Mode aventure : à la manière de "Substation" (Atari STE), une carte de l'Ukraine sur laquelle on trace des pointillés au fur t à mesure qu'on avance dans le jeu. Chaque étate sera une ville ukrainienne qu'on démine pour permettre à la biodiv (une espèce par ville) réinvestissant le territoire... Il y aura une animation à chaque "victoire" montrant un couple d'animaux allant l'un vers l'autre (mode bm16) et avec des coeurs apparaissant... A chaque ville il y aura une "photo" de la ville en arrière plan (grâce aux module LUA de Samuel).


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 108 messages ]  Aller à la page Précédente  1, 2, 3, 4, 5, 6, 7, 8  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 38 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com