[hector 2hr+] développement assembleur / sprite

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Répondre
Krys76
Messages : 4
Inscription : 17 avr. 2022 21:36

[hector 2hr+] développement assembleur / sprite

Message par Krys76 »

Bonjour à toutes et à tous,

J’ai fait l’acquisition d’un hector 2hr+, que de souvenirs de mon enfance ! :) :D
Forcément, à l’époque, point d’internet de et sa mine d’information… ce n’était pas évident pour programmer sur la bête. D’autant plus en assembleur.
Bref, j’arrête de vous ennuyer avec mes histoires du passé et j’aborde ma question.

Voilà j’aimerai développer la bête en assembleur (z80) et j’ai quelques questions :
  • Existe t il des applications pour favoriser un développement cross platform (pc vers hector) ?
  • Comment envoyer un dev compilé sur cette machine?
  • Question importante, lors d’un dessin sur l’écran HR comment attends t on la synchro vbl (balayage de l’écran en fin de parcoure ) ?
Voilà j’aurais sûrement d’autres question.

Merci à vous :wink:

Krys
yves
Messages : 464
Inscription : 12 sept. 2007 21:32

Re: [hector 2hr+] développement assembleur / sprite

Message par yves »

Bonjour,

cool, bravo pour ce beau projet!

Sur les 2 premières questions: Il est possible d'utiliser l'un des émulateurs (vbhector, mess, dchector) pour tester et hectorduino, par contre pas de bibliothèque spécifique existante à ma connaissance.
Pour le 3eme point aucune idée

Yves
Krys76
Messages : 4
Inscription : 17 avr. 2022 21:36

Re: [hector 2hr+] développement assembleur / sprite

Message par Krys76 »

Merci beaucoup de ta réponse Yves.

Alors oui, pour la 1iere question j'utilise vb hector, il est vraiment top cet émulateur, je suis totalement bluffé.
Par contre je n'ai pas encore trouvé le moyen d'avoir un flux simple et directe.
Par exemple pour le C64 j'utilise CBM prg studio, c'est vraiment pratique.
Mais je vais creuser ce point concernant Hector

En revanche, j'ai pas trouvé beaucoup d'information sur le développement assembleur de sprite pour l'Hector.
Pourtant il y a quelques jeux dans le commerce, donc cela doit exister.

Dans la plupart des machines de cette époque je crois avoir remarqué que tous les dev assembleur on une petite routine pour attendre la fin du "vertical blank ligne" (fin de balayage du faisceau sur les ancien tv). Remarque en écrivant cela, je me demande si je ne vais pas avoir la réponse en fouillant du coté des valeurs inscrits dans certain case mémoire de l'hector....hum faut chercher.
Mais je prends toutes pistes d'où qu'elles viennent :D
Avatar de l’utilisateur
Kristof
Messages : 363
Inscription : 08 mars 2021 10:44
Localisation : Narbonne (11)
Contact :

Re: [hector 2hr+] développement assembleur / sprite

Message par Kristof »

Cbm prg studio sur C64 c'est un sacré truc en effet. Mais je doute que sur Hector il y ai eu une personne qui ai passé du temps a créer un IDE aussi avancé.

En général tu as une interruption qui est générée quand la synchro verticale se fait. Soit tu utilise le système d'interruption pour récupérer le truc, soit tu vas lire un registre quelque part pour savoir ou ca en est. Je connais pas du tout l'Hector cependant.
Markerror
Messages : 2121
Inscription : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: [hector 2hr+] développement assembleur / sprite

Message par Markerror »

Bonjour,

Je n'y connais rien en Hector (même si j'ai trois exemplaires de diverses versions qui dorment dans leurs cartons), mais il me semble que la plupart des modèles utilisent un Z80. A partir de là, le vecteur d'interruption &38 (saut à cette adresse mémoire tous les 300ème de secondes) est forcément présent, et peut servir à s'y retrouver pour faire de la synchro en bidouillant un peu. Quelques machines (Oric, bouh... ) n'ont pas de port permettant d'avoir l'état de la synchro vidéo.

En étant pragmatique, je suppose que les auteurs des émulateurs existants doivent avoir une réponse à cette question.
Dernière modification par Markerror le 11 août 2022 06:59, modifié 1 fois.
yves
Messages : 464
Inscription : 12 sept. 2007 21:32

Re: [hector 2hr+] développement assembleur / sprite

Message par yves »

Effectivement à l'exception de l'interact, c'est du z80 sur toutes les machines.

Cdt
Yves
Avatar de l’utilisateur
6502man
Messages : 12242
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [hector 2hr+] développement assembleur / sprite

Message par 6502man »

Ca fait un baille que j'ai rien programmé sur Hector, mais il me semble que l'on peut détourner un vecteur d'interruption !!!
La je n'ai pas accès à mes sources donc je n'aurais pas la réponse de suite ...
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Krys76
Messages : 4
Inscription : 17 avr. 2022 21:36

Re: [hector 2hr+] développement assembleur / sprite

Message par Krys76 »

Merci beaucoup pour vos réponse, au départ je pensais que j'allais crier dans le désert, mais ce forum à l'air plus que sympathique ! :D
@6502man, je peux patienter sans souci pour que tu m'aiguilles sur le sujet, d'avance merci.
Fool-DupleX
Messages : 2271
Inscription : 06 avr. 2009 12:07

Re: [hector 2hr+] développement assembleur / sprite

Message par Fool-DupleX »

Les gens sympathiques sont toujours les bienvenus sur ce forum plus que sympathique ! :D
Avatar de l’utilisateur
Dominique
Messages : 814
Inscription : 09 mars 2010 13:37
Localisation : Limoges
Contact :

Re: [hector 2hr+] développement assembleur / sprite

Message par Dominique »

Salut Krys

Au sujet des sprites, le Forth Pampuk semble particulièrement performant.

D'après 'La Pratique du FORTH avec HECTOR' Chapitre 13 Il possède différents mots pour la création et la gestion des sprites, à commencer par le mot IMAGE.

Tu trouveras sur le site de Daniel, DCHector - Documentation , le Forth désassemblé.
On y voit que dans le mot IMAGE (adresse 3A2Eh) le sprite, par le mot MASK (3A17h) , s'enregistre sous la forme d'un array et s'affiche par le mot DRAW (3680h) qui fait appel à la routine ROM 0E38h.
OBS : le sprite débute par 2 parametres: la hauteur du sprite et sa largeur [edit] . Avant d'entrer à 0E38h, l'adresse du début du sprite se trouve dans la pile SP.

Ce n'est qu'une piste, car je ne connais pas le Hector.

[EDIT du11.08 - 9h] remplacé Le MODE (1,2,3 ou 4) par 'sa largeur
Répondre