Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

Le projet a connu une très belle avancée ce week-end maintenant que je dispose d'un programmateur d'EEprom.

J'ai pu tester la carte d'interface (la corriger) et Assembler mes premiers exemples avec z80asm .

Je sais allumer les LEDs et détecter la pression de boutons. Un interface utilisateur rudimentaire mais nécessaire pour savoir si mon programme fonctionne.

minimal.jpg
minimal.jpg (259.41 Kio) Consulté 700 fois
in_out.jpg
in_out.jpg (204.94 Kio) Consulté 700 fois
Je dispose maintenant d'un environnement complet...

Je vais pouvoir explorer la programmation Z80 et les autres composants présent sur la carte:
  • RAM,
  • ROM Banking,
  • PIO,
  • CTC,
  • Tone Generator.

Je voudrais aussi ajouter:
  • Un UART
  • un écran LCD, Clavier
  • un bus I2C
  • Augmenter la RAM (RAM Banking)
J'ai publier les sources et les cartes sur: Je suis vraiment content d'être arrivé à quelque-chose de concret... c'était un projet un peu fou quand je l'ai entamé.
Avatar de l’utilisateur
Gods69
Messages : 281
Inscription : 29 janv. 2022 16:11
Localisation : Gan (64)

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Gods69 »

mchobby a écrit : 07 oct. 2023 16:08 Normalement, setupapi.dll se trouve dans le même répertoire que Xgpro.exe .
Vérifie si elle est bien là! (cfr tuto, il faut la télécharger et la placer manuellement)
Je l'ai bien copiée... Sûrement un problème avec Wine...
Pièces jointes
L.png
L.png (69.01 Kio) Consulté 636 fois
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

@gods69
Les systèmes Linux sont case-sensitive!
Renomme la dll SETUPAPI.dll
Avatar de l’utilisateur
Gods69
Messages : 281
Inscription : 29 janv. 2022 16:11
Localisation : Gan (64)

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Gods69 »

Ça. je l'avais déjà essayé depuis le début de le mettre en majuscule. Peut-être que le DLL n'est pas compatible avec la dernière version du logiciel
(v12.63)?
En tout cas, Wine, avait bien fonctionné au moment de l'installation du logiciel.
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

J'ai une version 12.57 de XGPro.
Ma version de Wine est wine-3.6 (Ubuntu 3.6-1).
Dominique
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : test PIO en sortie

Message par mchobby »

Bonsoir,
Une nouvelle publication permettant de tester les PIO de la carte Z80 en sortie.
Curieux? cela se passe par là ==> Retro-ingenierie d'une carte Z80 : partie 5 - test des PIOs
z80-board-pio.jpg
z80-board-pio.jpg (250.81 Kio) Consulté 512 fois
Avatar de l’utilisateur
Gods69
Messages : 281
Inscription : 29 janv. 2022 16:11
Localisation : Gan (64)

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Gods69 »

mchobby a écrit : 28 oct. 2023 23:51 Ma version de Wine est wine-3.6 (Ubuntu 3.6-1).
J'ai la version : wine-5.0 (Ubuntu 5.0-3ubuntu1)
( C'est du bon condensateur céramique "vintage" que je vois sur les photos de la carte :wink: )
Avatar de l’utilisateur
Leraptor06
Messages : 581
Inscription : 15 févr. 2022 10:34
Localisation : Mandelieu

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Leraptor06 »

Bonsoir,
Comme gods69 j'ai le même probleme avec la dll qui n'est pas vu ( je l'ai mis en caps sans effet).
J'utilise mint debian edition 6 et xgproV1263, la derniere.
C'est bien énervant j'avoue.
Edit je viens d'essayer la version 1257 du tuto sans reussite, pourtant le t56 est bien vu quand je tape la commande dmesg.
Edit2 je remet la 1263 et ca marche!
Jp
Avatar de l’utilisateur
Gods69
Messages : 281
Inscription : 29 janv. 2022 16:11
Localisation : Gan (64)

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Gods69 »

Bon, j'ai essayé la version 12.55 (j'ai dû zapper cette version 12.57 car je ne la trouve pas dans mes sauvegardes) et ça a fonctionné !
Mais ça a été de courte durée car le programmateur n'était pas reconnu... j'ai oublié de copier le setupapi.dll dans le répertoire...
Je relance le logiciel et ça fonctionne plus ! Du coup, j’essaye avec la 12.63 et ça fonctionne aussi sans la DLL. Avec elle ça fonctionne plus.
C'est donc au niveau du dll. Je pense que le programmateur est bien reconnu:

Code : Tout sélectionner

[  234.020071] usb 5-1: new high-speed USB device number 3 using xhci_hcd
[  234.170339] usb 5-1: New USB device found, idVendor=a466, idProduct=0a53, bcdDevice= 1.00
[  234.170345] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  234.170348] usb 5-1: Product: XGecu T56 
[  234.170351] usb 5-1: Manufacturer: Xingong Electronics Co.Ltd

KERNEL[312.138176] remove   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1/5-1:1.0 (usb)
UDEV  [312.141042] remove   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1/5-1:1.0 (usb)
KERNEL[312.141122] unbind   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
KERNEL[312.141174] remove   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
UDEV  [312.143238] unbind   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
UDEV  [312.144791] remove   /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
KERNEL[314.682807] add      /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
KERNEL[314.688699] add      /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1/5-1:1.0 (usb)
KERNEL[314.688858] bind     /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
UDEV  [314.708318] add      /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
UDEV  [314.715210] add      /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1/5-1:1.0 (usb)
UDEV  [314.718108] bind     /devices/pci0000:00/0000:00:1c.6/0000:04:00.0/usb5/5-1 (usb)
Avatar de l’utilisateur
Leraptor06
Messages : 581
Inscription : 15 févr. 2022 10:34
Localisation : Mandelieu

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par Leraptor06 »

Salut,
Non je pense pas qu'il soit vu. Avec dmsg j'avais bien le modèle et la marque identifié.
Jp
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

Et si la version de la DLL devait strictement correspondre à la version du logiciel ?
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

Quoi de neuf depuis le dernier article sur le PIO en sortie ?

PIO test en lecture
Z80 PIO - Lecture
Z80 PIO - Lecture
Sélection_214.png (1013.08 Kio) Consulté 162 fois
Voir 04_pio_read.asm sur le dépôt.

Stack and Timing

Découverte de la stack, l'appel à une sous-routine et la création d'une fonctionnalité _delay.
Z80 Stack - exemple
Z80 Stack - exemple
Sélection_215.png (301.87 Kio) Consulté 162 fois
Voir 05_stack.asm

CTC / Timer

Création d'un timer avec le CTC ==> 06_ctc_ch1.asm

Utilisation d'un compteur supplémentaire sur le CTC pour compter envoyer une impulsion toute les secondes ==> 07_ctc_seconds.asm
Z80 CTC pulsing
Z80 CTC pulsing
Sélection_216.png (437.7 Kio) Consulté 162 fois
Avatar de l’utilisateur
mchobby
Messages : 185
Inscription : 22 mars 2023 22:38
Localisation : Waterloo (Belgique)
Contact :

Re: Retro-ingénierie d'une carte Z80 : de la centrale DTMF vers des projets Z80

Message par mchobby »

Afficheur LCD avec Z80

Après mes quelques essais avec le CTC, j'ai eu une idée un peu dingue... celle d'utiliser une afficheur LCD 20x4 sur le PIO1 de la carte.

Arduino dispose de la bibliothèque LiquidCrystal... j'ai donc décidé d'en faire un retro-portage en assembleur Z80. (j'adore le retro dans retro-portage).
Et vous savez-quoi? ... je ne me débrouille pas si mal que cela!
LCD 20*4 avec Z80 + PIO
LCD 20*4 avec Z80 + PIO
Sélection_217.png (959.35 Kio) Consulté 152 fois
J'ai même une routine pour imprimer une chaîne de caractère (Null Terminated String).
Voir les détails du raccordement et les exemples piolcd

C'est fou ce que je m'amuse sur ce projet.
A tout bientôt pour de nouvelles aventures
Répondre