OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 11:06

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 9 ] 
Autor Zpráva
 Předmět příspěvku: ZXS - externí RAM
PříspěvekNapsal: 08.01.2018, 19:36 
Offline
Radil
Uživatelský avatar

Registrován: 15.05.2014, 15:24
Příspěvky: 460
Bydliště: Karlovy Vary
Has thanked: 1 time
Been thanked: 258 times
Při popíjení dobré brazilské kávy a přemýšlení o životě brouka z čeledi Zilogis CPUlisis (ta potvora má 40 nohou, hajzl jeden!) :lol: mě napadla tato věc:

V minulosti se mi několikrát stalo, že jsem potřeboval na Spectru překrýt adresní prostor ROMky (0-3fff) pamětí RAM. Při ladění modifikované ROM, při tvorbě software běžícího od adresy 0 do externího zařízení, pro zdrojáky v MRSu apod. Párkrát jsem to řešil polo vrabčákem a univerzálním PCB + 2x SRAM 6264. A tak si říkám, 2 verze externí ROM už mám za sebou, co takhle externí RAM :god: Co vy na to? Byl by z vaší strany zájem? Jaké případné fíčury by tam podle vás měly být? Podotýkám, že bych rád opět konstrukci co nejjednodušší, žádné emulace RAMek všech možných klonů Spectra apod.

Moje představa (pro mě dostačující) je:

RAM v prostoru adres 0-3fff 16KB nebo víc, ale mě 16KB stačí. (pokud víc, kolik a jak stránkovat?)
Blokování RAM hard/softwarově.
Zálohování akumulátorem?
Průchozí sběrnice a co nejmenší rozměry pro mě podmínka.

Díky za další nápady a všem hezký večer. :like:


Nahoru
 Profil  
 
PříspěvekNapsal: 08.01.2018, 20:30 
Offline
Radil
Uživatelský avatar

Registrován: 15.05.2014, 15:24
Příspěvky: 460
Bydliště: Karlovy Vary
Has thanked: 1 time
Been thanked: 258 times
Busy píše:
1.napad: Okopiruj to z MB02 a nemusis nic vymyslat :)

Busy: Po letmem skouknuti schematu a precteni manualu od MB02 mi pripada, ze registr s adresou 23d (00010111b) pro strankovani a de/blokovani pameti musi nutne kolidovat s klasickym PIO 8255,
pokud dekoder adres pro PIO pouziva jen bity A7/6/5, a to tak ma vetsina interfejsu. Nebo mi neco duleziteho unika?

_________________

CSS Electronics

ZX Nucleon 512KB: hlavní počítač
ZX Spectrum, Didaktik Gama 80KB/192KB: další počítače
Beta Disk 128X, mini: hlavní úložiště
Delta Disk: bývalé úložiště
DivMMC EnJOY! PRO MINI *lite*: nepoužívané úložiště
Multiface 128C (Debugged): Nabourávač her
Externí ROM 64KB a 128KB: Externí test. ROMky
Advanced Parallel Interface ADPI8255A: Top paralelní IFC
Kempston Interface: IFC pro joystick
Multishots Interface: IFC pro 2 joysticky
Orpheus Interface: Top AY+joystick IFC

http://css-electronics.8u.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 08.01.2018, 21:10 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 05.09.2013, 14:08
Příspěvky: 1067
Bydliště: Smolenice
Has thanked: 130 times
Been thanked: 473 times
Už sme to raz vymýšľali, onehdá nám stačili dve banky a prišlo nám zbytočné vymýšľať vlastný štandard, takže sme to posadili do Spectra podľa MB02.

https://z00m.speccy.cz/pics/sram.png

Nenarazil som s tým nikdy na problém, takže sa prikláňam k Busymu. Ak chceš niečo nové postaviť, si radše použi nejaký využívany stránkovací štandard, než vymýšľať nové koleso. Je tam u mňa aj verzia do GALu, ale tú sme nikdy neskúšali.

_________________
To err is human, but to really foul things up requires a computer.


Nahoru
 Profil  
 
PříspěvekNapsal: 09.01.2018, 10:15 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
css píše:
Busy: Po letmem skouknuti schematu a precteni manualu od MB02 mi pripada, ze registr s adresou 23d (00010111b) pro strankovani a de/blokovani pameti musi nutne kolidovat s klasickym PIO 8255, pokud dekoder adres pro PIO pouziva jen bity A7/6/5, a to tak ma vetsina interfejsu. Nebo mi neco duleziteho unika?
Unikol ti adresovy dekoder 3205 v MB02 :)

Pokial k MB02 pripojis este dalsi interface s 8255 ktory sa aktivuje iba na A7=0 tak potom je jasne ze akykolvek port mensi ako 128 ti ho bude prepisovat. MB02 ma ale vlastnu 8255 (MB01 mala dokonca az dve), ktora je dekodovana okrem A7 aj cez A2,A3,A4 takze tam kolizie nehrozia.


Nahoru
 Profil  
 
PříspěvekNapsal: 13.01.2018, 04:45 
Offline
Pan Štábní

Registrován: 29.06.2013, 16:52
Příspěvky: 1611
Has thanked: 31 times
Been thanked: 357 times
Externi MB02 pamet ram + rom
https://velesoft.speccy.cz/prodej/prodej4/mb02-mem.htm
Obrázek

Externi rozsireni ZX ram:
https://www.worldofspectrum.org/forums/discussion/33611/
Obrázek

Jinak proc kopirovat cisla strankovacich portu ? To ma smysl jen u HW s bohatou SW vybavou.

_________________
http://velesoft.speccy.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 14.01.2018, 17:08 
Offline
Pan Štábní

Registrován: 29.06.2013, 16:52
Příspěvky: 1611
Has thanked: 31 times
Been thanked: 357 times
danhard píše:
Je tam zmíněno i externí mapování přes video RAM, to je uděláno jak ?


Videoram data jsou v ZX oddelena pres 470 Ohmu odpory na data sbernice i cpu. Takze externi periferie muze tyto data pretlacit a vnutit procesoru vlastni. Externi rozsireni ZX128 ram funguje tak, ze si samo veskerou pamet uklada paralelne do externi sram a pri cteni zx ram vzdy posila na sbernici jen data z teto sramky. Tak procesor vidi i skutecne zrcadleni stranek 5 a 2, ikdyz na ZX je vizualne vzdy jen prvni vram. Pokud si nastavim v hornich 16kB stranku 5 a zapisu na 49152 bajt 128, pak po precteni adresy 16384 procesor dostane take bajt 128, ikdyz tam nebude viditelny. To same se strankou 2, ktera se zrcadli od 32768. Jine rozsireni na 128kB maji vetsinou jen strankovani od 49152 a na zrcadleni uplne kaslou.

_________________
http://velesoft.speccy.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 14.01.2018, 20:21 
Offline
Pan Štábní

Registrován: 29.06.2013, 16:52
Příspěvky: 1611
Has thanked: 31 times
Been thanked: 357 times
danhard píše:
To je pěkné, že se data při čtení přetlačí, ale při zápisu se zapisuje jak do videoram, tak do namapované exram ?
Zobrazení tedy ukazuje nesmysly.


V pripade, ze software vyuziva zrcadleni stranek a misto od 16384 bude zapisovat do videoram jako do zx ram stranky 5 od 49152, pak na obrazovce zmeny neuvidime, ale pamet bude obsahovat vzdy korektni data, takze CPU nic nepozna. Zatimco kdyz software bude zapisovat skutecne od 16384, vse bude na obrazovce v poradku. Zrcadleni videoram nelze externe docilit, tak jsem to udelal alespon viditelne pro CPU. Kdyby slo o rozsireni bez zrcadleni, software obcas vubec nebude fungovat, protoze tam zrcadleni neexistuje a holt se neco muze podelat. Muj modul je tedy O.K. Lepsi to byt nemohlo.

_________________
http://velesoft.speccy.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 14.01.2018, 22:08 
Offline
Pan Štábní

Registrován: 29.06.2013, 16:52
Příspěvky: 1611
Has thanked: 31 times
Been thanked: 357 times
Busy píše:
VELESOFT píše:
Jine rozsireni na 128kB maji vetsinou jen strankovani od 49152 a na zrcadleni uplne kaslou.
Vdaka tomu vedela urcita verzia BScopy128 vyuzit celu 160 kB pamet ktora bola k dispozicii vdaka absencie zrkadlenia.


A to mohla rovnou detekovat MB02+ a vyuzivat jeste dalsich 512kB ram...

_________________
http://velesoft.speccy.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 21.01.2018, 01:44 
Offline
Pan Generální
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 2331
Has thanked: 303 times
Been thanked: 637 times
pcmaker píše:
Mně by se líbilo, kdyby to fungovalo obdobně, jako poslední verze externí EPROM. Zůstalo by rozdělení na 8 částí po 16kB, které by se opět volily otočným přepínačem. Oproti EPROM by tam byla zálohovaná SRAM. Svičem bych povolil zápis. Z kazeťáku nahrál nějaký flešovací program. Do něj pak požadovaný obsah, který by se přenesl do zvolené části externí SRAM. Přehodil svič a zakázal zápis.
Jedno z rozšíření, kterým se nahrazuje ROM a dá se u něj zakázat zápis (bitem na portu) je ISOROM 128k. Viz https://cygnus.speccy.cz/popis_isorom128-2006.php

Ale používá port 239, což v kombinaci ZXS 128k + Betadisk + UR-4 nevadí, ale s jiným hardware... no, je třeba být opatrný. Prakticky to funguje tak, že po zapnutí to najede do ISOROM s meníčkem podobným tomu ve 128k. OUTem se dá přepnout na standardní 128k ROM, nebo do 2x 16kB nainstalovat libovolnou ROM, která může stránkovat stejně jako ta 128k (tj. 2x 16kB přepínaných bitem 4 na portu 32765). Reset port 239 neovlivní, takže i po resetu nabíhá ta dvojice 16k stránek, která byla nastavena předtím.

Pravda, RAMka je tam všeho všudy jen 32kB (ROM celkem 64kB), ale prakticky jsem nikdy nepotřeboval instalovat víc "ROM"ek do RAM současně. Na portu 239 je spousta bitů volných a klidně by se bity 2 - 7 daly použít k přepínání až 64 16kB stránek RAM, tj. dohromady 2048kB

Znovu opakuji - výborná kombinace s Betadiskem 128 (tj. TRDOS 5.03 a vyšší), ale nevím o tom, že by to někdy někdo provozoval, nebo chtěl kombinovat s jiným hardwarem. Btw. port 239 je jen pro zápis.

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 9 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 9 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz