Sharp MZ700: Questions

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
TerryS
Messages : 8
Inscription : 26 oct. 2023 05:36
Localisation : Chicago

Sharp MZ700: Questions

Message par TerryS »

Hello!

Je suis en train de regarder les schemas de la carte mere du MZ700 et je vois des trucs bizarres que je n'explique pas vraiment. Peut être quelqu'un ici connait la reponse.

D'abord sur le port d'extension, la pin 40 est /EXWAIT. J'ai cherche partout sur les schemas, je ne trouve ce signal nulle part. En revanche, il y a en entree du z80 un signal /WAIT, qui lui aussi n'est connecte nulle part. J'en deduis que c'est probablement le signal /EXWAIT du port d'extension et qu'ils ont fait une erreur dans la documentation (???). Maintenant, il n'y a pas de pull-up sur le signal /WAIT, et la c'est vraiment bizarre. Je ne pense pas qu'on peut laisser flotter le signal /WAIT du Z80 comme ca sans bloquer le cpu...
wait.PNG
wait.PNG (18.97 Kio) Consulté 504 fois
Ensuite, je vois un autre truc bizarre. Les signaux du z80 passent par des bus drivers 74245. Les pins output enable (pin 19) des 245 sont connectes sur le signal /BUSAK du z80. Ca semble normal, si il y a un bus request qui vient de quelque part, les 245 vont alors tri-stater leurs sorties pour laisser celui qui a fait le bus request avoir acces au bus:
busak.PNG
busak.PNG (19.71 Kio) Consulté 504 fois
Ce qui sous-entend que quelque chose peut donc faire un bus request, par exemple une carte d'extension. Mais le signal /BUSRQ n'est pas present sur le bus d'extension et quand on regarde le z80:
busreq.PNG
busreq.PNG (12.62 Kio) Consulté 504 fois
On voit que le signal est par default pulled up et n'est pas accessible. Donc il y a tout un circuit pour tri stater le bus du z80 apres un bus request mais il n'est pas possible de faire un bus request. Ou il y a quelque chose qui m'echappe (ce qui est tres probable) ou ceux qui ont concu la machine etaient plutot tordus. A moins qu'ils avaient prevu de faire sortir le signal sur le port d'extension et finalement, ils ont change d'avis (???).

Voila, juste deux ou trois choses bizarres, si quelqu'un ici a etudie la machine et a une idee...
Avatar de l’utilisateur
hlide
Messages : 3507
Inscription : 29 nov. 2017 10:23

Re: Sharp MZ700: Questions

Message par hlide »

Le signal /WAIT n'est pas flottant, c'est juste que tu a raté le schéma qui lie /WA et /EXWAIT à /WAIT. /WA est le signal généré par le LSI dans deux conditions :
1) accès à la MROM ($0000-$0FFF) où il faut un cycle de plus avec /WAIT = 0. C'est important car ça influe sur les timings de lecture et écriture des cassettes.
2) si le CPU tente un accès à la VRAM, il est bloqué par un /WAIT = 0 jusqu'à ce que BLNK = 1 (blanc horizontal). Le blocage sera à nouveau effectif si BLNK = 0. C'est bien décrit dans le manuel.

MZ-700 est une évolution du grand frère (ou père) MZ-80 K, il n'y avait pas de /BUSREQ sur le connecteur d'expansion. Probablement parce qu'ils n'imaginaient pas un cas où une carte d'extension ne puisse pas dialoguer avec le CPU. Je pense qu'il y a quand même pas mal de machine Z80 qui ont leur /BUSREQ non connecté à l'extérieur à cette époque. Enfin ces tampons sont quand même là pour amplifier les signaux avec l'extérieur donc ils ont leur utilité, et forcément pour reproduire le Hi-Z, ils ont utilisé /BUSACK.
wait.png
wait.png (4.54 Kio) Consulté 473 fois
lsi.png
lsi.png (44.42 Kio) Consulté 473 fois
Avatar de l’utilisateur
TerryS
Messages : 8
Inscription : 26 oct. 2023 05:36
Localisation : Chicago

Re: Sharp MZ700: Questions

Message par TerryS »

Ah bien vu! J'avais pas vu ca en bas de la page! Faut que je change mes lunettes! Ca a plus de sens maintenant :D

C'est vrai que les buffers sont utiles, surtout avec des 74LS. Finalement, ca n'est pas si mal qu'ils aient fait ca, si j'ai besoin de faire des bus requests pour mes experimentations, j'aurai juste a souder un fil sur la patte du z80.
Répondre