OldComp.cz

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


Právě je 16.04.2024, 20:13

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 540 ]  Přejít na stránku Předchozí  1 ... 10, 11, 12, 13, 14, 15, 16 ... 36  Další
Autor Zpráva
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 15:01 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Ta instrukce má 17 taktů (4, 3, 4, 3, 3), kdy se co dělá a do jaké stránky ??

Jak funguje třeba instrukce RLC (IX+d) ?

Kde je psáno, že dvouslovní instrukce mají druhý M cykl také M1 ?

Jak se to tedy využívá ???

Prostě když použiju takovou habaďůru, tak potřebuji vědět, jak se to používá a proč ?

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 15:06 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
nene, žádné bankování paměti... CP/M 2.2 používá paměť navíc vždy jen jako RAMDISK (nebo Cache u Sinclaira-Lamač)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 15:13 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
danhard píše:
Ta instrukce má 17 taktů (4, 3, 4, 3, 3), kdy se co dělá a do jaké stránky ??
Jak funguje třeba instrukce RLC (IX+d) ?
Kde je psáno, že dvouslovní instrukce mají druhý M cykl také M1 ?
Jak se to tedy využívá ???
Prostě když použiju takovou habaďůru, tak potřebuji vědět, jak se to používá a proč ?

no používá se to hlavně pomocí LDIR/LDDR co jsem viděl v kódu, žádná další divočina (mimo teda FDC rutin ve 3 stránce), při zápisu do VRAM máme většinou připlou "monitor" oblast takže to přebije stránkování pokud rutiny běží tam
za mně by bylo praktičtější stránkovat po 32kB klasicky

pokud mne paměť neklame tak prefixové instrukce Z80 (CB,FD,DD,ED) generují M1 i po prefixu


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 15:26 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
LDIR/LDDR využívá tak tu adresaci zápisu, nefungunje stack, takže jen omezená část instrukcí.

Pokud je zapnutý monitor, tak se nedostaneš do spodních 16k na 64k stránce.

Na videokartě nevím kdo generuje 58 PAGE a kam vede AB19.

Na CPU kartě nevím kam vede A40 /INHMEM.

Asi by to chtělo ještě schema paměti a FD.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 15:42 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
danhard píše:
Pokud je zapnutý monitor, tak se nedostaneš do spodních 16k na 64k stránce.

ano, ale s tím se počítá, fonty jsou až od 4000h, 32kB paměti je špatně využitelné (jen za pomoci paměti 4000h-7fff) nebo v textovém režimu za Videodatama je taky trochu volno


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 18:17 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
danhard píše:
Na CPU kartě nevím kam vede A40 /INHMEM.

ten vede do RAM a do VIDEO k blokování jejích pamětí když je aktivní "monitor" prostor - je to výstup z CPU karty
danhard píše:
Na videokartě nevím kdo generuje 58 PAGE.

podle mně je to výstupní signál z RAM karty - přejmenovaný /BSEL (podle popisu propojky SG která se má dát do stavu 1-2-3) a má říkat jestli pracuje paměť z RAM karty nebo Video karty

ale nikde nevidím kdo by generoval A18 a A19 (ty jsou potřebné na 1MB RAM karty)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 20:48 
Offline
Radil

Registrován: 24.12.2014, 16:11
Příspěvky: 427
Has thanked: 32 times
Been thanked: 101 times
l00k píše:
ten vede do RAM a do VIDEO k blokování jejích pamětí když je aktivní "monitor" prostor - je to výstup z CPU karty

Přesně tak, /INHMEM je výstupem CPU desky, je aktivní, pokud je aktivní Monitor a současně adresováno spodní 16K, A14=A15=0.
Vstupem jsou všechny karty schopné zaclánět v paměťovém prostoru.
l00k píše:
podle mně je to výstupní signál z RAM karty - přejmenovaný /BSEL (podle popisu propojky SG která se má dát do stavu 1-2-3) a má říkat jestli pracuje paměť z RAM karty nebo Video karty

Ano, generuje ho /BSEL z desky RAM, ten registr. Určuje, jestli se bude dělat s nadřízeným systémem - RAM, nebo s podřízeným - Video
l00k píše:
ale nikde nevidím kdo by generoval A18 a A19 (ty jsou potřebné na 1MB RAM karty)

Odpověď zní nikdo. Je to rezerva pro budoucí rozšíření na 1MB. Autoři to plánovali, až budou mít k dispozici DRAM 41256.
Je tedy možné implementovat další registr, kde budou další dvojice bitů pro A18 a A19.

Víceprefixové instrukce Z80 aktivují /M1 pro každý prefix i pro opcode. Takže instrukce se načte z jedné stránky, operand z druhé, a uloží do třetí.
Ostatně, MAPF z TNS to dělá taky tak. Jen pozor, před naplněním rozdílných hodnot pro RD, WR a M1 je nutné zakázat přerušení. To by systém neustál, protože při příchodu přerušení by se návratová adresa uložila někam do háje.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 11.08.2022, 22:11 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Na to, aby to fungovalo, tak by musely být na stránce s /M1 a /RD kopie těch programů, protože to čtení může obsahovat data adresovaná PC, třeba LD dd, nn.

Prostě to přepínání mapy podle /M1 mi nedává smysl.

A jak tedy funguje instrukce CALL cc, nn , jestliže je cc true ?
Časování je podle datasheetu 17 taktů (4, 3, 4, 3, 3)

Asi si to budu muset odchytnout na analyzátoru :D

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 07:48 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
právě aby nemusely být kopie těch rutin ve stránkách se používá to /M1
zakážeš přerušení, nastavíš stránkování, popřesunuješ data dle potřeby, vrátíš se do norálního režimu (vše ze stránky 0) a můžeš povolit přerušení a jet dál

instrukce Call cc,nn nedává smysl pokud nejsi s adresací ve stejné stránce
co by to udělalo:
- v cyklu M1 by to přečetlo to Call z nastavené stránky pro M1 instrukci
- při vyhodnocení podmíky jako true a teď mně neber za slovo v pořadí
-- podle stránky pro zápis by to na hodnotu SP uložilo návratovou adresu PC+3 (!! přepíše data v té stránce)
-- podle stránky pro čtení si načte adresu kam skočit (toto není destruktivní přímo ale tam může být cokoliv)
-- nastaví PC na blbou adresu ale dalšíinstrukce se bude číst ve stránce pro M1

suma sumárum, načte si to nesmyslnou adresu pro volání a ještě vy stránce pro zápis přepíše 2 bajty
musíš to brát z pohledu signálů /Memrq /RD /WR /M1 a pak A14-A17 (A16/A17 se drží v registru) + Page a k tomu navíc má přednost Inhmem

Z256 běží normálně v režimu hlavní RAM stránka 0+"monitor" nebo pouze stránka 0 hlavní RAM, stránkuje poze při přístupu do VRAM nebo při práci s Ramdiskem nebo při disketových operacích


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 09:19 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Tak mě zaujalo, že se tam vyskytuje 4 taktový přístup do paměti na 3. pozici.
U instrukcí s prefixem to značilo, že se dělá /M1.

Pokud máš v mapě jinou adresu pro /M1 a jinou pro /RD tak můžeš používat jen instrukce, které nemají datovou část adresovanou PC.

Pokud neukazuje mapa /RD a /WR na umístění platného zásobníku, tak ho nesmíš použít.

A je to protože si podřezáváš větev mapováním celých 64kB protože tam nezbývá žádný common prostor, ve kterém by to systém řešil bez omezení.

Mnohem rozumnější je, když je tam jen nějaký segment paměti, který je mapován, třeba 16kB v oblasti, kterou nepoužívá systém. Tam stačí dvě mapy, pro čtení a pro zápis a můžeš si transferovat dle libosti.
Na čtecí mapě můžeš i spouštět programy.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 09:42 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
tady je to celkem v pohodě, když není programátor osel tak si s tím poradí (přece jen jde o práci s daty)

ale ten systém u TNS to je opravdu síla, tam se jede při zapnutém mapování v režimu: Instrukce Instrukce čtení zápis, přičemž instrukce jedou vždy z aktuálního mappingu 64kB (ten je zvlášť) a to čtení zápis se řídí stránkováním -> tady mně napadá že tam zkombinovali PP01 a Z256 :)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 09:58 
Offline
Radil

Registrován: 24.12.2014, 16:11
Příspěvky: 427
Has thanked: 32 times
Been thanked: 101 times
Musíš udělat DI
Zapnout
LDIR
Vypnout
EI
zapnuté je to jen na nezbytně dlouhou dobu a během ní nesmíš používat instrukce s přímými parametry. Musíš mít vše nachystané v registrech.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 11:19 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
jasný, toto je ten nejjednodušší funkční přístup... a teď co udělali frajeři co vymysleli Z256

klidně si do stránky 3 hlavní Ram umístili vlastní vektory přerušení, udělali univerzální modifikovatelnou rutinu pro čtení/zápis dat do FDC pod přerušením, takže ve stránce 0 mají jinou tabulku vektorů pro přerušení než ve stránce 3 a klidně si dovolí pustit přenosy dat do/z FDC přes přerušení...
podobně chytře je řešena VRAM, kdy rutiny pro zápis do VRAM jsou v paměťové oblasti "monitor" a můžou mít stránkování jaké potřebují a přenášet si data do/z Vram podle potřeby ze všech možných prostorů (mimo to co je překryté oblastí "Monitor")


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 11:53 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
V takovém případě může hlavní program akorát sedět na místě a čekat na přerušení :D

Běží program těch frajerů, co vymysleli Z256, někdy na jiné, než základní stránce ?
A jak se do něj skáče ?

A jak je to třeba s DMA, to jede s jakým adresováním ?

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: VZLET Z 256
PříspěvekNapsal: 12.08.2022, 12:35 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 580
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
DMA neumí ovládat A16/A17 ale předpolkádám že signály /MEMRQ /WR a /RD z něj lezou, takže čtení zápis pokud jede v režimu paměť podle stránek/prostoru - toto není jak ověřit než na reálném stroji si na to udělat test, ani BIOS ani Eprom DMA nepožívá v té verzi co se dochovala

programátoři Z256 využívají pro program stránku 0, 3 a samozřejmě prostor "monitor" jak RAM, tak ROM


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ů: 540 ]  Přejít na stránku Předchozí  1 ... 10, 11, 12, 13, 14, 15, 16 ... 36  Další

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 6 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