Extension ZX81

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

Répondre
gm03
Messages : 26
Enregistré le : 16 avr. 2016 15:31

Extension ZX81

Message par gm03 » 01 janv. 2018 17:14

Bonjour, j'ai déniché un ZX81 avec 2 extensions:

Une Timex Sinclair 1016 et une plus allongée marqué juste AGB

La première doit être une 16Ko ... et la 2eme ?

Pourquoi en avoir 2 ... une HS ?

Merci

Avatar du membre
fneck
Site Admin
Messages : 11947
Enregistré le : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Re: Extension ZX81

Message par fneck » 01 janv. 2018 19:18

Je ne connais pas bien les Sinclair.
Tu peux nous mettre une photo? C'est peut-être celle que l'on voit vers le bas de cette page ?

Avatar du membre
Papy.G
Modérateur
Messages : 1721
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Extension ZX81

Message par Papy.G » 01 janv. 2018 19:23

AGB semble avoir été un distributeur qui vendait un peu de tout, il y avait des cartes extensions de ram ou de périphériques, mais aussi des cartes basic étendu, il faudra ouvrir pour savoir.

Peut-on cumuler deux extensions de 16Ko sur un ZX81?
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

gm03
Messages : 26
Enregistré le : 16 avr. 2016 15:31

Re: Extension ZX81

Message par gm03 » 01 janv. 2018 19:51

C'est bien celle du bas de la page ... on ne peut pas connecter les 2 à la fois ...

Avatar du membre
Xavier_AL
Messages : 208
Enregistré le : 06 déc. 2017 20:30

Re: Extension ZX81

Message par Xavier_AL » 02 janv. 2018 10:54

Salut à tous,

La carte AGB (distributeur français dirigé par Alain Brégeon auteur du jeu "Le passager du temps"), distribuait de nombreuses cartes d'extension... joystick, mémoire, carte ASCII RS232...

Image
Carte mémoire AGB 16k avec emplacement pour ROM en h2000.

Sur Zx81, impossible de cumuler les extensions mémoires... deux cartes 16k font 16k! ... et remplace la mémoire embarquée (1K+16K=16K!).

Officiellement, le ZX81 a été conçu pour fonctionner avec 16k de ram, pour des raisons logiciels... car la ROM (moniteur Basic) ne teste que 16k.

Sinclair n'a JAMAIS sorti de cartes supérieur à 16k...

Avec un décodage improbable de la mémoire en hardware, Sinclair n'a jamais voulu aborder le problème, car cela pouvait mettre en évidence ce problème de conception.

Le constructeur Mémothech, a finalement étudié la question en créant une carte d'extension de "64k", qui en réalité, le donnait "que" 48k de mémoire utilisable, qui bouchait les quelques trous de mémoire de cette machine.

Une carte 16K sur cette machine supprime la mémoire interne de 1K de cette machine... et généralement, aucun revoie de bus d'extension n'était disponible sur ces cartes... même pas pour y brancher d'autres interfaces!
Oui, cette machine était prévue pour une ou deux cartes d'extension, car avec plus, le régulateur de tension 7805 était trop juste.

Donc, impossible de cumuler les cartes mémoire, car l'adressage sera le même pour ces deux cartes!
Il faut une carte 32k ou 48K pour bénéficier d'une mémoire plus importante.

Et comme je le disais précédemment, le Bios ne verra "que" 16k avec ces mémoires... il faudra donc POKEr manuellement le RAM_TOP (limite haute de mémoire) pour pouvoir bénéficier de cette profusion de mémoire.
Et cela à chaque redémarrage.

Structure mémoire (Par décodage de blocs de 8K):
0000-1FFF : Mémoire morte. (8K)
2000-3FFF : Vide "mémoire fantôme" (utilisé pour certaines ROMs, ou pour de la RAM 8K)
4000-7FFF : Mémoire basic en 16K (la mémoire commence à l'adresse 4000h, donc à 16K+16K)
8000-BFFF : Bloc de 16K (16k+16k=32k)
C000-FFFF : Bloc de 8k+8K (zone en conflit matériel avec le décodage clavier, donc non utilisable avec la ROM!)
Donc, en bouchant les trous, nous arrivons à 48K... avec certaines restrictions de programmation au niveau de la mémoire haute.

Mais, il est IMPOSSIBLE de monter à 64k, car la rom fait déjà 8k, et le basic commence à 16k.
La carte dite de "64k", utilise "au mieux" cette mémoire pour boucher ces zones vides grâce à un décodage mémoire maison... avec des dip-swichs de configuration.

Au mieux, 48k peuvent être utilisés sur cette machine, mais avec 16k de mémoire vive utilisée en "DATA", qui ne pourront pas avoir accès en mode "utilisation" par le CPU... donc, pas d'utilisation en ASM ni en Basic.

Ce qui limite cette machine à un petit 48k, mais dans les faits, 32k sont réellement utilisable en basic et ASM.
Donc, il faut savoir compter sur ses doigts avec cette machine...

A noter que le ZX81 fait la différence entre la mémoire 1k et la mémoire 16k!
En effet, il compresse la mémoire vidéo avec une mémoire 1k et non en 16k.
Ce qui peu provoquer des problèmes en créant un programme 1k avec 16k de RAM.

Utilisé avec un ZX81 standard, la mémoire vidéo utilise toute la mémoire, et donc, ne fonctionne pas.

gm03
Messages : 26
Enregistré le : 16 avr. 2016 15:31

Re: Extension ZX81

Message par gm03 » 03 janv. 2018 10:01

Mes 2 extensions font donc doublon ?

Merci

Notator
Messages : 406
Enregistré le : 09 août 2015 20:13
Localisation : Lyon

Re: Extension ZX81

Message par Notator » 03 janv. 2018 10:41

Oui, dans l'état actuel des choses, parce qu'elles sont adressées dans la même zone mémoire.

Comme dit plus haut, le Z80 ne peut adresser directement que 64 ko, mais comme le ZX81 a déjà 8 Ko de Rom, il reste 56 ko de disponibles.

Les deux extensions mémoire pourraient être cumulables, mais il faudrait en modifier l'une des deux, pour changer sa localisation mémoire.
Ceci peut être fait en modifiant son décodage d'adresse, par recâblage des portes logiques sur la carte d'extension.

De mémoire, il faut complètement zapper le décodage fait par le ZX81, parce que je crois me souvenir que l'ULA génère un décodage mémoire simplifié, avec redondance et chevauchement de zones mémoires.

De même, sur une des versions de début, la fameuse mémoire RAM de 1 ko est en réalité une mémoire de 2 ko de rebut, dont la moitié est défectueuse, ce qui a permis à Sinclair de l'acheter à coût très bas. La sélection de la zone de 1ko correcte est faite par un strap, lors du montage de la carte.

Avatar du membre
Papy.G
Modérateur
Messages : 1721
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Extension ZX81

Message par Papy.G » 03 janv. 2018 11:53

Pour compliquer la chose, le décodage clavier, si j'en crois ce que que Xavier a écrit plus haut, a été mappé en RAM, au lieu de le faire apparaître comme périphérique, comme cela est normalement prévu sur le Z80.
Pour ce qui est du masquage de la Rom, les disposition prises sur les Orics ainsi que sur le VG5000µ montrent que ce n'est pas vraiment un problème, pour peu que le décodage des adressages soit approprié.
Ces machines n'étaient pas prévues de toutes façons pour supporter un maximum de Ram. 16ko sont sensés être suffisants pour de simples machines d'initiation, et au coût de la mémoire à l'époque, on aurait fait exploser le budget pour l'équipement, ce qui n'aurait pas eu de sens, compte tenu des autres limitations matérielles de l'ordinateur de base.
En gros, qu'aurait-on pu faire de plus, à l'époque, avec 64kO sur un ZX81, avec la longueur de chargement des cassettes, et le prix final de la machine, comparé à d'autres machines plus appropriées pour, par exemple, faire tourner CP/M?
Sur Oric, par exemple, a-t'on eu tant de programmes qui utilisaient totalement la Ram?
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
Xavier_AL
Messages : 208
Enregistré le : 06 déc. 2017 20:30

Re: Extension ZX81

Message par Xavier_AL » 03 janv. 2018 12:05

Salut,

Juste un petit rappel mémoire...
Toutes les extensions se banchent et se débranchent HORS tension.
Car le bus d'extension possède deux tensions... le 5 volt et du 9 volt.
Et bêtement, les ingénieurs les ont placé l'un à côté de l'autre.
Donc, un léger biais sur le connecteur peut endommager l'alimentation... et tous les circuits 5v... mis soudainement à 9volts!

Tu va sûrement remarquer un ronflement sur la RAM 16k de Sinclair, et c'est normal.
Elle est pourvue d'un régulateur à découpage... pour soulager le pauvre 7805 embarqué, mais aussi pour éviter les parasites hautes fréquences due aux fonctionnement de la RAM.

Normalement, des condensateurs de découplage peuvent faire l'affaire, mais parfois, sur certaines cartes, l'écran se trouve amputé d'une partie de l'écran, d'ondulations ou d'écritures en biais.

La carte AGB avec des composants plus récent et moins gourmant en consommation n'a pas besoins de de système et utilise le 5 volt de la machine... mais, tout problèmes sur la carte, se retrouvera à l'écran (condensateurs vieillissants).
Sinon, le conseil qui fait la différence... bien vérifier si les patins sont en place, sur une table bien plate et rien dessous!

Si par malheur ton ZX est bancal, lors de la saisie des programmes, ta machine bougera et la carte mémoire pourra avoir de mauvais contacts... et plantage assuré...

Autre chose... vérifie toujours si le détrompeur (en troisième position en partant de la gauche) et toujours dans trou!
Parfois, il reste accroché à la carte mère, et on le perd. Donc si on rebranche l'extension sans détrompeur... c'est la carte mémoire de secours qui prend le relai! ... et on n'en recommande une chez LaRedoute!

Si tu n'utilises pas de transfo d'origine ... attention à la polarité... le ULA n'aime pas les inversions de polarité!
Pareille, tu recommandes un ZX81 au 3Suisses ...pour éviter que le magasinier de LaRedoute soit plié en deux dans sont stock.

Sinon, au bout d'un moment ça devient une habitude...

... heu! j'allais oublier... toujours appuyer sur le ZX lors des branchements du lecteur de K7, mais habituellement on fait ça hors tension! :mrgreen:

Amuse-toi bien !

Avatar du membre
Xavier_AL
Messages : 208
Enregistré le : 06 déc. 2017 20:30

Re: Extension ZX81

Message par Xavier_AL » 03 janv. 2018 12:13

@Papy.G

Pour Sinclair, la barrière était de 48k (Spectrum), mais au final, la mémoire écran, variable, les stacks... on se retrouvait avec des programmes limités par le Basic... un petit 25 Ko pour un programme standard!

Pas beaucoup mieux sur l'Amstrad, d'ailleurs.

Il n'y avait que sur de rares machines où le basic pouvait gérer la mémoire correctement (Thomsons, VG5000 et Oric).

Sinon, il fallait tout faire en ASM, et ignorer le basic.

hlide
Messages : 331
Enregistré le : 29 nov. 2017 10:23

Re: Extension ZX81

Message par hlide » 03 janv. 2018 15:52

Pas du ZX-81 mais une architecture pas si éloignée : SHARP MZ-80A. Contrairement aux machines Sinclair, Amstrad, MSX et les autres, la série des MZ compatible avec le MZ-80K n'ont pas de ROM Basic (il faut charger ce langage via une cassette ou un "floppy" disque). De fait, il y a bien 48Ko de RAM sans bank-switching (de souvenir, le MZ-80K et A n'en ont pas si je ne m'abuse). Il reste donc 16Ko qui se partagent la ROM kernel, la ROM des caractères, la RAM vidéo, l'espace I/O ainsi que des ROM externes via le bus externe.

Un gars ayant un MZ-80A en sa possession a tenter une expérience : étendre les 48 Ko à 50Ko sans faire de bank-switching. Je vous traduis son message :
Toutes mes excuses pour le manque de mises à jour récemment. Je devrais en avoir plus pour vous très bientôt. Une chose intéressante que j'ai faite récemment a été de faire passer la mémoire du MZ-80A de 48K à 50K. Pas énorme, mais vous n'aurez pas beaucoup plus en mémoire supplémentaire sur un 80A :) Il y a un socle vide sur la carte mère, généralement pour une EPROM contenant un logiciel. Mais j'ai trouvé récemment une puce - la Toshiba TMM2016AP-15, une puce SRAM 16 kilobits (2Ko) - que j'ai branchée sur cette prise, utilisable comme une puce RAM supplémentaire !! Comme vous pouvez le voir sur les photos, je l'ai branchée et ensuite pu stocker des données à l'adresse $E800 et au-delà (jusqu'à $ EFFF). Cela me donne un peu plus de 2 Ko de RAM à utiliser :) Ce n'est pas beaucoup mais c'est une découverte intéressante car je ne savais pas que c'était possible. Habituellement, cette prise ne prend qu'un puce EPROM 2716.
23794904_10154806139825738_7191566242839273568_n.jpg
23794904_10154806139825738_7191566242839273568_n.jpg (89.64 Kio) Vu 406 fois
23674903_10154806140215738_6525980799633554776_o.jpg
23674903_10154806140215738_6525980799633554776_o.jpg (271.9 Kio) Vu 406 fois
23783399_10154806140510738_4779364827683177818_o.jpg
23783399_10154806140510738_4779364827683177818_o.jpg (244.96 Kio) Vu 406 fois
23736249_10154806141030738_3327365703994178464_o.jpg
23736249_10154806141030738_3327365703994178464_o.jpg (205.2 Kio) Vu 406 fois

Markerror
Messages : 1255
Enregistré le : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: Extension ZX81

Message par Markerror » 03 janv. 2018 18:08

Xavier_AL a écrit :
03 janv. 2018 12:13
Pas beaucoup mieux sur l'Amstrad, d'ailleurs.
Il n'y avait que sur de rares machines où le basic pouvait gérer la mémoire correctement (Thomsons, VG5000 et Oric).
Sur un CPC, on peut quand même aller à des listings jusqu'à 36ko (pour le 6128), ce qui n'est déjà pas mal par rapport à la plupart des micros 8 bits (en dehors de ceux que tu as cités). Ca aurait même pu être mieux si la ram vidéo n'était pas mappée en &C000.

Répondre