Incompéhension EF9345
Modérateurs : Papy.G, fneck, Carl
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
Oui joaopa ! c'est tout a fait ce que je cherche a faire !
Je ne suis qu'un utilisateur pas un pro
Re: Incompéhension EF9345
Un exemple de code. On pourrait encore optimiser, mais on perdrait en clarté. Pour un début, c'est suffisant
Code : Tout sélectionner
.org $7000
.write "random.bin"
ld bc,$5100-$4A0A
ld de,$4A0A
_boucle:
ld hl,_motif
ldi
ldi
ld a,b
or c
jr nz,_boucle
_debut: ;--------------construit setet--------------------
ld hl,_ef9345 ;initialisation de l'EF93 à ne faire qu'une fois
call $00AD
ld hl,$4A0A
ld a,31
_boucle2:
inc a
jr z,_suite ;---------------dernier caractere----------------
cp 128
jr nz,_carac_non_gr:
set 6,a
_carac_non_gr:
push af
call $001B ; routine $1B incremente HL de 10
pop af
jr _boucle2
_suite:
ld a,31
_boucle3: ;---------------------affichage à l'écran -----------------------
call $00A4
ld hl,_sequence_caractere
call $00AD
ld hl,_caratere
inc (hl)
jr z,_fin
ld a,(_cursorx)
inc a
ld (_cursorx),a
cp 39
jp z,_resetcursorx
jr _boucle3
_suitey:
ld a,(_cursory)
inc a
ld (_cursory),a
jr _boucle3
_resetcursorx:
xor a
ld (_cursorx),a
jr _suitey
_fin:
jr _fin
_ef9345:
.db $10,$20,$81,$29,$00,$20,$82,$29,$00,$20,$83,$29,$67,$20,$84,$29,$13
_sequence_caractere:
.db $0C, $21
_caratere:
.db $20,$22,$D8,$23,$5A,$26
_cursory:
.db $08,$27
_cursorx:
.db $00,$28,$00
_motif:
.db $00,$ff
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
Un grand merci joaopa. C'est du jedi encore pour moi mais je vais essayer de comprendre...
je buche sur 1 points:
A quoi sert : .write "random.bin" et comment le rendre compatible avec l'éditeur http://clrhome.org/asm/ ?
je buche sur 1 points:
A quoi sert : .write "random.bin" et comment le rendre compatible avec l'éditeur http://clrhome.org/asm/ ?
Je ne suis qu'un utilisateur pas un pro
-
- Messages : 7967
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Incompéhension EF9345
J'y connais rien, mais mon intuition me dit que ca sert à définr le nom du binaire produit par l'assembleur. Tu peux remplacer ca par l'équivalent pour ton assembleur.rendomizer a écrit :A quoi sert : .write "random.bin" et comment le rendre compatible avec l'éditeur http://clrhome.org/asm/ ?
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
Il y a cependant une erreur à: _sequence_caractere: .db $0c, $21 puisqu'il y a 14 et non 12 octets dans la sequence !
donc on devrait avoir: _sequence_caractere: .db $0e, $21
mais je me dit que tu l'as fait volontairement pour que je cherche un peu ... non ?
donc on devrait avoir: _sequence_caractere: .db $0e, $21
mais je me dit que tu l'as fait volontairement pour que je cherche un peu ... non ?
Je ne suis qu'un utilisateur pas un pro
Re: Incompéhension EF9345
La routine $AD est
Donc il faut compter exactement le nombre de commandes à envoyer à l'EF9345. Dans mon code, je lis 12, soit $0C
Code : Tout sélectionner
02ef 46 ld b,(hl) longueur de la sequence
02f0 23 inc hl
02f1 cd8602 call 0286h <--- attente EF9345 pret
02f4 0e8f ld c,8fh |
02f6 eda3 outi | adresse
02f8 0ecf ld c,0cfh |
02fa eda3 outi | données
02fc 20f3 jr nz,02f1h -
02fe c9 ret
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
Effectivement il y en a 12 dans ton code mais tu as oublié les deux octets de finalisation de la sequence joaopa ! ($28,$00)
Je ne suis qu'un utilisateur pas un pro
Re: Incompéhension EF9345
Quels octets $28 et $0 ?
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
C'était la fin de _sequence_caractere: dans ton 1er jet mais tu l' as corrigé depuis j'avais pas vue loool. Il manquait $28 du (Registre R0 + 8 pour l’exécution) et $00 dit à l'ef9345 d'exécuter les commandes qu'on a définies plus tôt !
Je ne suis qu'un utilisateur pas un pro
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
Excuse joaopa je me suis planté tu n'as pas fait d'erreur.
Je ne suis qu'un utilisateur pas un pro
- Papy.G
- Modérateur
- Messages : 3051
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Incompéhension EF9345
Il me semble que l'on peut mettre le bit d'exécution au remplissage du dernier registre, ainsi, on gagne du temps processeur.
Par ailleurs, l'envoi de 00 en R0, c'est l'instruction KRF sans incrémentation, pas une supposée demande d'exécution de commande.
Par ailleurs, l'envoi de 00 en R0, c'est l'instruction KRF sans incrémentation, pas une supposée demande d'exécution de commande.
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Demandez-en plus, ou faites-le vous-même.
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
merci pour les précisions Papy G et a joapa qui m'a bien éclaircie !
Je ne suis qu'un utilisateur pas un pro
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
il 'y a pas le même nombre de setet que de seteg en changent r2 $d8 en $c8...Au total j'en compte 168 comment acceder au 8x100 caracteres ?
Je ne suis qu'un utilisateur pas un pro
- Papy.G
- Modérateur
- Messages : 3051
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Incompéhension EF9345
Tu n'as que 8ko sur le VG5000, comme une page prend trois blocs (de 1ko), quand tu veux les attributs permettant d'afficher les sets Q, il ne te reste que maximum cinq blocs pour les caractères Quadrichromes. De façon régulière et sans ruse, mais contentons-nous de cela pour l'instant.
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Demandez-en plus, ou faites-le vous-même.
- rendomizer
- Messages : 413
- Inscription : 17 juin 2016 21:00
- Contact :
Re: Incompéhension EF9345
merci Papy G. Mais j'ai vraiment besoins d'aller plus loin pour mon projet de space invader version VG5000...merci pour votre aide, cela ma bien servi et je sais que vous avez les connaissances nécessaires au développement sur l'ef9345. Jaopa aussi un grand merci pour ta patience car je reconnais que je t'ai donné du fil a retordre avec mes codes a deux balles mais je vais progresser...
Je ne suis qu'un utilisateur pas un pro