Interface VG5000 - carte SD

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
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: Interface VG5000 - carte SD

Message par hlide »

Bonne question. Je ne vois pas de connecteur JTAG sur la carte. Est-ce à dire que le MAX est programmé en extérieur avant d'être inséré ?

J'ai eu l'occasion d'utiliser l'ISE (pour un Spartan 6) et le Vivado (pour un Zynq-7020) de Xilinx ansi que le Quartus (pour MiSTer) d'Altera mais dans l'ensemble je n'avais pas besoin de passer par une solution JTAG. Honnêtement, je n'ai pas vu vraiment de différence.
Dernière modification par hlide le 30 août 2019 16:34, modifié 1 fois.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Interface VG5000 - carte SD

Message par __sam__ »

Sur certaines cartes de développement, on programme via la prise USB et le "debuggeur" présent sur la carte.
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
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: Interface VG5000 - carte SD

Message par hlide »

Pour le premier je passais par l'USB. Le second je crois aussi. Pour MiSTer, c'est plutôt par un fichier RBF placé dans un SD.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

Je le programme à part en jtag via une petite carte (la série S permet la programmation jtag) et un usbblaster (qqs € sur ebay). Ici il sert au décodage d'adresses, la commutation des banques mémoire et le transfert des coordonnées de la souris (via 3 demux). Donc son programme n'est pas trop compliqué.
C'est une carte de dev, donc j'ai vu large (128 LEs) pour pouvoir tester différentes solutions au cas ou.

Je ne suis pas spécialiste du vhdl, je préfère le schématic :D
J'ai eu l'occasion d'utiliser du xilink et de l'altera (donc ise et quartus). Je préfère quartus dont l'ide est plus intuitive. Avec ise, on cherche tout le temps quel logiciel il faut utiliser pour faire telle ou telle partie.
mais bon après, c'est comme les logiciels de CAO, chacun est habitué à son logiciel et le trouve tellement plus simple qu'un autre ...

Pour commencer avec ces bestioles, il est plus simple de choisir un fpga car il n'a pas de cycles max d'écriture (le prog est en SRAM).
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

Voici une première mouture du système. C'est encore une version alpha, soyez indulgents :D
Pour le tester, il faut lancer l'émulateur dcvg5k en mode 48k.
puis taper:
CLEAR 50,&"7FFF"
POKE &"47F5",0
POKE &"47F6",128
ensuite il faut appuyer sur F9 pour accéder à la fenêtre de mise au point.
Puis charger les programmes en mémoire avec le bouton charger un fichier (à peu près à mi-hauteur) en n'oubliant pas de définir l'adresse avant.
en 8000h, le prog DOS_vg5k
en C000h le prog SSD16K
ensuite vous pouvez quitter cette fenêtre et il ne reste plus qu'à essayer.
J'ai mis 2 petits progs blitz et le 1er prog de citadelle mais vous pouvez écrire un petit prog basic et l'enregistrer.
Toutes les commandes sont opérationnelles sauf les SAVEF et LOADF
Bien entendu, la taille du SSD n'est que de 16K soit 32 secteurs (donc max ça peut descendre à 992). Le système ne fait pas encore de vérification de débordement donc ne soyez pas trop gourmands.
Les commandes doivent être précédées de DISK ou ..
SSDVG5K.zip
(4.98 Kio) Téléchargé 131 fois
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Interface VG5000 - carte SD

Message par Daniel »

Excellent, c'est un bon début !
Il est peut-être trop tôt aujourd'hui, mais quand le projet sera terminé j'intégrerai l'émulation de la carte SD à l'émulateur dcvg5k.

ssdvg5k.png
ssdvg5k.png (11.34 Kio) Consulté 4139 fois
Daniel
L'obstacle augmente mon ardeur.
Markerror
Messages : 2121
Inscription : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: Interface VG5000 - carte SD

Message par Markerror »

Je viens de tester la bête, ça fonctionne !

J'ai essayé par contre une commande qui en théorie ne sert à rien, faire un DISK LOAD "fichier" depuis un programme.
Le programme écrase celui en mémoire mais le système retourne une erreur de syntaxe.
Si le système ne permet pas de faire de merge, ça serait utile du coup de retourner plutôt un message "commande interdite" ou autre.

Pour le reste, c'est un vrai plaisir de de bricoler des fichiers sans avoir à manipuler une cassette (physique ou virtuelle !).
Avatar de l’utilisateur
Mokona
Messages : 1040
Inscription : 17 déc. 2016 22:01
Localisation : Nord Est des Yvelines
Contact :

Re: Interface VG5000 - carte SD

Message par Mokona »

Cool.

Un petit script pour automatiser ça pour les utilisateurs de MAME

Code : Tout sélectionner

go $101c
HL=7FFF
go 2ad4
w@47f5 = $8000
load dos_vg5k.bin,$8000
load ssd16k.bin,$C000
go
Avec une ligne de commande pour charger ça :

Code : Tout sélectionner

mame64 vg5k -ramsize 48k -maximize -natural -debugscript ssd.mame.load -debug
(a priori, le debugger de Mame n'aime pas charger des fichiers qui ne sont pas en minuscules... je l'ai donc renommé)

L'astuce du script est que j'arrête le debuggeur au moment où la ROM a trouvé l'adresse max, et je la modifie pour être $7FFF, ce qui fait l'équivalent d'un CLEAR 50,&"7FFF". Ensuite, je modifie l'adresse du jump, ce qui remplace les POKE, puis les deux fichiers sont chargés aux bons endroits.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

Ok, je vois d'où viens le soucis du load dans le prog: le pointeur de texte HL ne bouge pas et donc le système reprend l'exécution là où il s'était arrêté.
Il y a encore certainement pas mal de bugs mais ce n'est qu'une version alpha. La route est encore longue... :D
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

Sur les conseils de Daniel et Mokona, j'ai modifié la structure du système de fichier puis repris le code afin d'intégrer une meilleure gestion des chaînes. Désormais grâce aux cours de Mokona, les commandes peuvent prendre des paramètres composés (A$+"01", etc.).
J'arrive au délicat problème de gestion des banques mémoires (surtout la lecture/écriture dans une banque parallèle). C'est peut-être pour ça que le Vxdos se limitait à 16K. Il faut aussi gérer la pile pour ne pas la perdre en route.

En parallèle, j'ai terminé le routage du PCB de la cartouche. Elle fait la taille d'une cartouche VU0031. Encore quelques vérifications et je pourrai faire fabriquer le PCB. Le modèle 3D de la cartouche est déjà établi ce qui permettra de l'adapter parfaitement au PCB.
pcb_carte.jpg
pcb_carte.jpg (231.77 Kio) Consulté 4052 fois

Bref, ça avance... :)
Avatar de l’utilisateur
Mokona
Messages : 1040
Inscription : 17 déc. 2016 22:01
Localisation : Nord Est des Yvelines
Contact :

Re: Interface VG5000 - carte SD

Message par Mokona »

Ça prend forme!
Avatar de l’utilisateur
Carl
Modérateur
Messages : 13253
Inscription : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: Interface VG5000 - carte SD

Message par Carl »

en effet ! :-)

Carl
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

quelques nouvelles...

Le PCB est parti à la production.
J'ai avancé sur la partie SD. Pour l'instant ça marche, j'arrive à lire et écrire sur la carte dans un fichier existant. Les commandes DIR et FORMAT sont opérationnelles ainsi que la gestion des erreurs liées à la carte SD.
Par contre j'ai pas mal de soucis avec la commutation de banque RAM/ROM ce qui m'a obligé à modifier la ROM basic pour placer mon point d'entrée et à mettre des bout de codes dans les buffers en RAM [$4800 à $4900] pour le retour. De plus je sens que ça va poser problème pour l'intégration du hook. Bref ce n'est pas très propre aussi je vais plutôt utiliser le haut de la mémoire à partir de $E000. ça fait 8K de perdu pour la ram mais il reste quand même 40K et ça va simplifier pas mal de chose (Rom inchangée, pile, commutation ram/rom, points d'entrée et de sortie). On verra bien si c'est gênant pour la suite.
gotcha
Messages : 2759
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: Interface VG5000 - carte SD

Message par gotcha »

Fred_72 a écrit : 25 sept. 2019 17:59 Le PCB est parti à la production.
Petite question un peu hors sujet: où fais tu produire le PCB ? S'il y a des composants CMS sur la carte, celui qui produit la carte peut-il les souder directement ?
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: Interface VG5000 - carte SD

Message par Fred_72 »

Je fais appel à JLCPCB.
Je ne pense pas qu'ils fassent la soudure.
Répondre