OldComp.cz

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

Zptky do minulosti!

Právě je 31.07.2021, 13:14

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 54 ]  Přejít na stránku Předchozí  1, 2, 3, 4
Autor Zpráva
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 11.06.2021, 22:36 
Offline
Pan Generální

Registrován: 22.05.2013, 21:14
Příspěvky: 3040
Bydliště: Bratislava
Has thanked: 311 times
Been thanked: 594 times
solaris104 píše:
Loader, při kterém hraje AY hudba :-)
O hudbe na AY pocas nahravania som tiez uvazoval. Niektore moje loadery bezia s povolenym prerusenim, takze technicky by to nebol problem. Ale napokon som so to nechal, hlavne z dovodu ze normalne ZX Spektra 128 mali EAR vystup voci AY prilis silny a malokto mal v tej dobe ACB stereo vystup bez primiesaneho EARu...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 11.06.2021, 22:46 
Offline
Radil

Registrován: 24.12.2014, 16:11
Příspěvky: 295
Has thanked: 19 times
Been thanked: 51 times
A to nerozháže časování, když je EI?


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 12.06.2021, 08:20 
Offline
Pan Generální

Registrován: 22.05.2013, 21:14
Příspěvky: 3040
Bydliště: Bratislava
Has thanked: 311 times
Been thanked: 594 times
omikron píše:
A to nerozháže časování, když je EI?
To sice ano, ale zase na druhej strane load rutinka je do znacnej miery toleratna. Ked si pozries ako vyzera signal z kazetaku (t.j. kolko taktov maju jednotlive periody) a porovnas ho so signalom z ineho kazetaku (trosku ina rychlost, ina kolmost hlavy) tak tam budu dost brutalne rozdiely.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 12.06.2021, 14:06 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1611
Bydliště: BA-Petržalka :(
Has thanked: 15 times
Been thanked: 231 times
A ono by to išlo aj bez prerušenia, stačilo by nejaké vlastné počítadlo, ktoré by spočítavalo čakacie časy (register B), teda ich dĺžky. A pri nejakej hodnote by bol odskok na jeden takt hudby a reset počítadla. Jednoduché.

S časovaním je to tak, že až také presné nieje, lebo jedena slučka čakacej rutiny je 59 taktov. Takže hrať sa tu na +/- 10 taktov je zbytočné.

EI: v prerušení by sa tiež mohli pripočítať do B registra hlavnej rutiny nejaké slučky, podľa dĺžky rutiny prerušenia, takže by sa čas zabratý prerušením automaticky kompenzoval. Inak AY je iba pár OUTov, ale spraviť takto klasickú 48K hudbu počas nahrávania, to by bolo. :mrgreen: Lenže na väčšine počítačov by sa bil výstup na reproduktor so vstupom z magnetofónu.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 12.06.2021, 14:30 
Offline
Radil

Registrován: 24.12.2014, 16:11
Příspěvky: 295
Has thanked: 19 times
Been thanked: 51 times
S původním obvodem ULA nemožné, jelikož tam Ear, Mic a Speaker sdílí jediný pin.

Ale možná by šlo napsat 48K hudbu která téhle vlastnosti využívá. Různé kombinace bitů Mic a Spk dávají různá napětí.

To by mě zajímalo, jestli toho někdo využíval.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 12.06.2021, 15:04 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1611
Bydliště: BA-Petržalka :(
Has thanked: 15 times
Been thanked: 231 times
Na Didaktiku M model 90 je každý výstup a vstup zvlášť, takže tam by to išlo. A aj som toho využíval, upravil som si rutinu aby okrem farby okraja mala aj výstup na reproduktor, takže som pekne z eMka počul čo sa nahráva.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 13.06.2021, 11:00 
Offline
Pan Generální

Registrován: 22.05.2013, 21:14
Příspěvky: 3040
Bydliště: Bratislava
Has thanked: 311 times
Been thanked: 594 times
PotPalo píše:
A ono by to išlo aj bez prerušenia, stačilo by nejaké vlastné počítadlo, ktoré by spočítavalo čakacie časy (register B), teda ich dĺžky. A pri nejakej hodnote by bol odskok na jeden takt hudby a reset počítadla. Jednoduché.
To nie je zly napad.
PotPalo píše:
EI: v prerušení by sa tiež mohli pripočítať do B registra hlavnej rutiny nejaké slučky, podľa dĺžky rutiny prerušenia, takže by sa čas zabratý prerušením automaticky kompenzoval.
Takto by som to radsej nerobil, lebo hrana z kazetaku moze prist zrovna hned potom ako pride k preruseniu, a namiesto toho, aby load rutinka hned zareagovala, prerusenie bude "simulovat" ze hrana este dany pocet (zalezi od dlzky prerusenia) cyklov B pocitadla neprisla. To by uz mohlo sposobit problemy.

Ja som to riesil uplne primitivne. V preruseni mi bezi iba nejake co najkratsie nastavenie nejakeho flagu a load rutinka si tento flag testuje a ak zisti ze je nastaveny, namiesto cakania (alebo inych veci) urobi potrebne akcie. Ako flag zvyknem pouzivat register IY. Obsluha prerusenia potom vyzera takto:
Kód:
INC IY
EI
RET
A loader si podla hodnoty v IY testuje, ci nastalo prerusenie.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 13.06.2021, 16:55 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1611
Bydliště: BA-Petržalka :(
Has thanked: 15 times
Been thanked: 231 times
A nebolo by jednoduchšie, keby obsluha prerušenia vyzerala takto?:
Kód:
RET

:D

Prerušenie iba zakáže prerušenie. Loader by potom kontroloval či je prerušenie povolené alebo nie (a teda nastalo):
Kód:
LD A,I
JP PE, prerušenie nebolo
EI
CALL music


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Kazetové loadery
PříspěvekNapsal: 13.06.2021, 21:08 
Offline
Pan Generální

Registrován: 22.05.2013, 21:14
Příspěvky: 3040
Bydliště: Bratislava
Has thanked: 311 times
Been thanked: 594 times
Ale ano, bolo :)

Akurat musis mat istotu, ze sa program na ten test dostane minimalne kazdych 20 ms, co pocas samotneho nahravania bajtov bloku samozrejme mas.

V niektorych mojich loaderoch mam hodinky realneho casu, chcel som preto mat istotu ze nepridem o ziadnu pedesiatinu ani pri chytani uvodneho tonu a celej rezie okolo volania samotneho loadera. Z toho dovodu som pouzil ako flag pocitadlo, pri ktorom viem, kolko pedesiatin mi popripade uslo pri spominanej rezii a viem garantovat "presny cas" na hodinkach.


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ů: 54 ]  Přejít na stránku Předchozí  1, 2, 3, 4

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


Kdo je online

Uživatelé procházející toto fórum: Bing [Bot] a 1 návštěvní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