Assembleur en Z80 pour VG5000

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

joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Assembleur en Z80 pour VG5000

Message par joaopa »

Le VG5000 doit être le seul micro-oridianteur des années 80 ne disposant pas d'un assembleur/dessassembleur (en passant quelqu'un sait-il s'il y a eu un tel manque pour d'autres ordinateurs?).
Je compte remédier à ce défaut qui a certainement coûté au VG5000 la place de numéro 1 au hit-parade des ordinateurs les plus vendus au monde :mrgreen: :mrgreen:

Et cela amènera des milliers de développeurs qui pourront programmer leur counter-strike directement en assembleur sur le VG5000 sans passer par ces horreurs de PC :mrgreen:

L'idée est de faire quelque chose qui ressemble furieusement à celui présent dans les Alice. Ne voulant pas reinventer la roue, je crois que je vais partir de l'éditeur que Dominique a réalisé pour Forth s'il accepte que je réutilise son code.
Sinon, je ferai le mien :cry:
Je compte mettre l'éditeur et l'assembleur en fin de mémoire. L'emplacement dépendra donc de l’existence ou non d'extension vg5216 et VU0031. Cela permet de faire des faire des programmes un peu plus gros.
Dernière modification par joaopa le 22 mars 2015 15:39, modifié 1 fois.
Xavier

Re: Assembleur en Z80 pour VG5000

Message par Xavier »

Là,tu me surprends!
Pas de ROM ou de logiciel d'assemblage ou de désassemblage sur le VG5000!
Alors comment qui zont fait pour écrire la ROM du Basic????

J'attends la réponse de Markerror... Le spécialiste les VG5000 ... et de la programmation assembleur sur cette machine.
En même temps, si le basic était plus rapide que l'assembleur... nul besoin de ce gratter la tête.
Xavier

Re: Assembleur en Z80 pour VG5000

Message par Xavier »

Le VG5000 était tellement pas connu du tout, qu'il n'y a aucun programme Basic dans "Hebdogiciel" !
:shock:

C'était pourtant une machine de qualité, mais peut-être un peu chère.
Comme l'Aquarius et le Alice, en son époque...

Peut-être déjà considérés comme des clones... de seconde zone.
Avatar de l’utilisateur
Carl
Modérateur
Messages : 13253
Inscription : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: Assembleur en Z80 pour VG5000

Message par Carl »

L'éditeur est celui de Dominique et je pense qu'il n'y aura aucun soucis afin que Dominique te donne l'autorisation d'utiliser le code.

Pour ce qui est du développement ASM sur VG5000 : extrait de l'interview (http://vg5000.free.fr/
Savez-vous comment se faisait l'édition des programmes VG5000 ? Peu d'éditeurs externes ont produit des logiciels sur cette machine et à priori aucun de façon totalement indépendante (sans passer par Philips). Savez-vous pourquoi ?
Oui, c'est vrai. Au CTI, je bossais sur une machine propriétaire Philips PMDS dont le numéro m'échappe. La bécane tournait sous Multics. Je disposais d'un émulateur VG5000 développé par Philips et de quelques éditeurs de code assembleur. Les environnements de tests étaient rudimentaires et tout fonctionnait en émulation. Je crois savoir que Philips n'a jamais licencié son émulateur. Pour le code Basic, je bossais directement sur un VG5000 avec ses petites touches.
Pour Hebdo: rien sauf ça :roll:
hebo.jpg
hebo.jpg (92.79 Kio) Consulté 6983 fois
Carl
Avatar de l’utilisateur
Dominique
Messages : 828
Inscription : 09 mars 2010 13:37
Localisation : Limoges
Contact :

Re: Assembleur en Z80 pour VG5000

Message par Dominique »

Salut à tous,

Je passe souvent sur le site même si je n'ai pas le temps de me mettre à de nouveaux projets - bien qu'un me trotte dans la tête en Forth pour le MO5-.
Aucun problème Joaopa, tu peux utiliser le listing du moniteur du Forth. Tu l'as ?
Sauf erreur de ma part je l'avais fait à la va-vite et il n'éditait pas la ligne supérieure, mais tu peux la rajouter en faisant un test juste pour cette ligne.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Assembleur en Z80 pour VG5000

Message par __sam__ »

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
Markerror
Messages : 2121
Inscription : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: Assembleur en Z80 pour VG5000

Message par Markerror »

Bonsoir,

Spécialiste, faut pas exagérer, plein d'aspects du VG5000 restent pour moi un mystère. Fan, oui, même si j'ai du mal à faire des trucs concret dessus en ce moment :-(.

Un assembleur sur VG5000, pourquoi pas ? Après, reste la problématique du support de masse, je me vois mal stocker mes sources sur des cassettes...Au niveau purement code, le plus logique serait effectivement d'implanter le code de l'assembleur dans les 16 derniers ko de la RAM du VG5000, d'où nécessité d'avoir soit le couple VG5216+VU0031, soit la future interface VG5232 (toujours pas finalisée, honte à TotO !), ou encore le montage trouvé dans une de mes machines (que Toto considère comme une infamie).

Concernant la non parution de listings VG5000 dans Hebdogiciel, j'avoue que c'est assez étonnant. Même si la machine était achetée souvent par des néophytes en informatique (dont je faisais partie), des programmes Basic fait par des amateurs existaient forcément. Pour ma part, j'avais programmé une petite simulation économique de cité grecque qui aurait pu être publiée (pas de bol, je ne connaissais même pas cette revue à l'époque). Hélas, je l'ai perdue quand j'ai revendu mon VG5000 à un pote. J'ai pu récupérer des années plus tard la machine, mais pas la précieuse cassette contenant le jeu :-(.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: Assembleur en Z80 pour VG5000

Message par joaopa »

Markerror a écrit : Après, reste la problématique du support de masse, je me vois mal stocker mes sources sur des cassettes...
La cassette a son charme :P
Quelqu'un de motivé pour créer le lecteur de disquettes prévu par philips ou un lecteur de cartes?
Sinon, avec dcvg5k, il est possible de sauvegarder sur un PC.

Markerror a écrit : Au niveau purement code, le plus logique serait effectivement d'implanter le code de l'assembleur dans les 16 derniers ko de la RAM du VG5000, d'où nécessité d'avoir soit le couple VG5216+VU0031, soit la future interface VG5232.
Pour de gros projets, oui. Sinon, j'ai regardé les assembleurs Z80 sur les autres machines. Ils tiennent en moins de 8Ko. Par exemple, on peut l'utilser sur un ZX81 (+extesnion 16Ko) et sur un spectrum 16K0. Alice32 a un assembleur de 8Ko aussi.
TotO
Messages : 114
Inscription : 17 avr. 2015 23:31

Re: Assembleur en Z80 pour VG5000

Message par TotO »

Markerror a écrit :soit la future interface VG5232 (toujours pas finalisée, honte à TotO !), ou encore le montage trouvé dans une de mes machines (que Toto considère comme une infamie).
Bonjour bonjour... J'ai dû m'inscrire pour répondre a cet affront du coup ! :wink:
La VG5232 fonctionne, même si le son pose un petit soucis à cette chère mais vieille électronique branlotante. :lol:
Et effectivement, hacker son micro chéri au risque de bousiller des pistes vieillissantes (on est plus dans les années 80) n'en vaut pas la chandelle quand on a la chance de disposer d'un super port d'extension ! :shock:
Xavier

Re: Assembleur en Z80 pour VG5000

Message par Xavier »

Salut TotO,
C'est vrai qu'ici on ne parle pas beaucoup du Cpc...
Donc, Bienvenue par Minou!

Oui, je reviens à l'assembleur, plus précisément celui du ZX81... sur 16K.
Les codes font 6k à tous casser... Mais les mnémoniques en mode texte prennent beaucoup de place!
A l'époque, le codage ce faisait par portions de 4k !
Car, codes ASM(4k)+mnémoniques non commentées(5k)+Assembleur(6k)+mémoire écran (system 1K)=16k
Donc, coder avec seulement 16k de RAM était la galère!
Sauvegarde de 4K et taper à la main le reste des codes dans le même fichier...
Le mieux était l'assembleur en Rom, mais là encore, les mnémonique mangeaient plus de la moitié de la mémoire!
On pouvait donc augmenter le code de 4 à 7k, mais pas plus!
Donc, l'utilisation du ZX Spectrum avec ses 48k était mis à contribution pour le codage sur ZX81... ou le plus simple était d'acheter une extension mémoire de 32k pour le ZX81.
TotO
Messages : 114
Inscription : 17 avr. 2015 23:31

Re: Assembleur en Z80 pour VG5000

Message par TotO »

Merci pour l'acceuil.
Oui, je comprends bien que ça ne devait pas être évident de coder directement sur ZX ou même VG5000 à l'époque.
Des outils spécifiques devaient faire parti du confort des PRO-grammeurs, s'ils ne développaient pas directement sur PC en utilisant un PDS.
Avatar de l’utilisateur
Carl
Modérateur
Messages : 13253
Inscription : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: Assembleur en Z80 pour VG5000

Message par Carl »

extrait de interview de Laurent Maury
Savez-vous comment se faisait l'édition des programmes VG5000 ? Peu d'éditeurs externes ont produit des logiciels sur cette machine et à priori aucun de façon totalement indépendante (sans passer par Philips). Savez-vous pourquoi ?
Oui, c'est vrai. Au CTI, je bossais sur une machine propriétaire Philips PMDS dont le numéro m'échappe. La bécane tournait sous Multics. Je disposais d'un émulateur VG5000 développé par Philips et de quelques éditeurs de code assembleur. Les environnements de tests étaient rudimentaires et tout fonctionnait en émulation. Je crois savoir que Philips n'a jamais licencié son émulateur. Pour le code Basic, je bossais directement sur un VG5000 avec ses petites touches.
Carl
TotO
Messages : 114
Inscription : 17 avr. 2015 23:31

Re: Assembleur en Z80 pour VG5000

Message par TotO »

Merci.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: Assembleur en Z80 pour VG5000

Message par joaopa »

Après avoir finalisé :?: VGSargon, je me suis à VGAssem. Rien de bien probant pour l'instant. J'espère le finaliser pour Noël. Ca me ferait un beau cadeau. Bon, dans le pire des cas, pour fêter la victoire de la France à son championnat d'Europe en 2016.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: Assembleur en Z80 pour VG5000

Message par joaopa »

Ca y est. Le VG5000 n'est plus ostracisé. Il possède lui aussi son assembleur. Voici une adaptation du célèbre assembleur en ligne Zen (disponible sur Spectrum, Nascom, Amstrad,Sharp MZ....)

Comme me l'a autorisé Dominique, j'ai réutilisé son éditeur de texte développé pour Forth, car il est particulièrement adapté pour ce logiciel. Evidemment, j'y ai ajouté quelques améliorations. A vous de les trouver :wink:
Je joins le mode d'emploi téléchargé sur internet pour aider ceux intéressés par l'utilisation de ce logiciel. A mes heures perdues, je ferai un mode d'emploi en français.

Quelques détails techniques: Si vous utilisez le mode essai de l'assembleur avec un programme contenant RST 30h ou RST 38h, prévoir gros soucis. Sur le zen original, il ne fallait pas utiliser rst 30h, mais j'ai du utiliser rst 38h car rst 30h sert pour le rafraîchissement vidéo du vg5000.

J'ai utilisé les routines du VG5000. La misère. Très peu sont des routines indépendantes. Il a fallu regarder les interuptions, les renvois a d'autres sous-routines et prendre garde au fait de l'usage intensive du registre IX de façon interne.
Je suis en train de faire une version qui a un éditeur de texte plein écran, ce qui rend l'utilisation beaucoup plus facile.

Bon fini le baratin. Voici certainement ce qui vous intéresse le plus: les fichiers. Donc les voici:

Fichier K7
https://docs.google.com/uc?export=downl ... kZ5ckw1U3c
FICHIER WAV:
https://docs.google.com/uc?export=downl ... EdXLVJxSkU
FICHIER SOURCE Chargeur.z80
https://docs.google.com/uc?export=downl ... TNmM1I2Nzg
FICHIER SOURCE Zen.z80
https://docs.google.com/uc?export=downl ... 1lGRVp1WGc
MANUEL
https://docs.google.com/uc?export=downl ... HoxcF9VTUk
Dernière modification par joaopa le 16 oct. 2016 01:07, modifié 21 fois.
Répondre