Welcome, Guest. Please login or register.


Author Topic: Magnós frekvenciák (Read 26954 times)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux (Suse) Linux (Suse)
  • Browser:
  • Firefox 3.0.11 Firefox 3.0.11
    • View Profile
Magnós frekvenciák
« Reply #15 on: 2009.November.10. 12:13:55 »
es azert rossz mert valszeg a z80 cpu nem lenne eleg semmire ( ill. max ketszerezesre vagy ilyesmire, az meg nem eleg).

Szerintem valószínűbb, hogy a korlátozó tényező elsősorban a magnó minősége, illetve az ahhoz tervezett analóg elektronika. 1/10000s az 400 Z80 ciklus, amit (vagy akár gyorsabbat is) jól optimalizált kóddal valószínűleg még fel lehet dolgozni, ha esetleg nem is tudna tetszőleges sebességre automatikusan beállni, vagy nem működne turbós gépen.

Quote
Na szo ez a baud ertek a PC holdalon hangkartyanal maximum 44KHz lehetne

Ez a hangkártyától függően több is lehet :) Kb. a 90-es évek második fele óta szinte minden hangkártya tud 48 kHz-et (illetve az olcsóbbak gyakran csak azt, és minden mást szoftveresen konvertálnak); az emulátorban is az alapértelmezés 48000 Hz, nem 44100. 96 kHz-et tudó kártyát is lehet már venni néhány ezer Ft-ért (nekem is van ilyen).

Quote
Tehat elvileg egy pc hangkartyaval meg 44 KHz- es negyszogjelet le lehet generaltatni.

Pontosabben legfeljebb 22050 Hz-et, de a gyakorlatban azt sem, és a maximumhoz közeledve egyre kevésbé hasonlít négyszögjelhez (ha jó a hangkártya, akkor 11025 Hz felett már csak szinusz lehetne, illetve négyszögjelnél már 7350 Hz felett is).

Quote
Kerdes hogy az EP oldalon a detektalo kod, az mibol all, mert errol meg nem hallottunk semmit

A bemenet a B6h I/O port 7. bitje. A kimenet egyszerűen az EP hangkimenete, amit a magnó felvesz :)

Quote
A masik kerdes ami beugrik, hogy a szalagon eleve valtakozo jel van, tehat nincs neki egy szintje, amihez kepest a bit beallhatna

Az analóg jelet egy egyszerű áramkör négyszögjellé konvertálja/torzítja. Ezt meg lehet nézni a kapcsolási rajzon.

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13519
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.5.5 Firefox 3.5.5
    • View Profile
    • http://enterprise.iko.hu/
Magnós frekvenciák
« Reply #16 on: 2009.November.10. 12:43:32 »
Na megnéztem a TPT-t, ami átbütykölt ROM rutint tartalmaz :-)
Itt a sebességekhez tartozó konstansok táblázata:
Code: ZiLOG Z80 Assembler
  1. KTABLA:         DB 52,42,62,86          ;2400   0       HIGH
  2.                 DB 124,99,149,199       ;1000   1       SLOW
  3.                 DB 83,66,100,133        ;1500   2
  4.                 DB 62,50,74,100         ;2000   3
  5.                 DB 50,40,60,80          ;2500   4
  6.                 DB 42,34,50,68          ;2950   5
  7.                 DB 40,32,48,64          ;3100   6
  8.                 DB 39,31,47,64          ;3180   7

Az eredeti ROM rutinbeli az 1-es szegmensen:

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13519
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.5.5 Firefox 3.5.5
    • View Profile
    • http://enterprise.iko.hu/
Magnós frekvenciák
« Reply #17 on: 2009.November.10. 12:47:34 »
Vajon mi lesz ha csinálunk egy 10,8,12,16 variációt? Ez elvileg 12400 lenne...

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #18 on: 2009.November.10. 20:52:21 »
Na hat a kovetkezot szedtem ossze.

Tehat a magno jele es a 0b6h port b7- je kozott van egy elektronika. Ezt megnezhetnem a kapcsolasi rajzon, de egy kapcsolasi rajz megertesehez vegkepp keves vagyok. Ugy kepzelem, hogy egy valami elerzekeny elektronika lehet, ami mondjuk egy lefuto el utan zerora allitja a 0b6h port b7- et, ha meg felfuto elet detektal a hangbemeneten, akkor egyesbe allitja. Valami ilyesmit kepzeltem.

Gondoltam kiprobalom. Csinaltam audacity- vel egy egy masodperces 1000 hz- es negyszogjelet.

Ezt a hangot eloszor folyamatosan lejetszva es egy vas EP bemenetere kapcsolva, ciklusban elkezdtem olvasni a bitunket es muveletet vegeztem a bejovo erteken 80h- val, es felfilleztem a tartalmaval 32 kb- ot. Az eredmeny pozitiv volt, a 32 kb. teletoltodott kb. ( nem neztem meg reszletesen ) 30 bajtos szakaszokkal, ahol vagy zero volt vagy 080h.

Na gondoltam akkor nezzuk meg mekkora a legnagyobb freki amit igy stabilan meg lehet merni.

Csinaltam egy kodot, ami ciklusban olvassa az input bitunket, es ha a bit valtozik, akkor novel egy szamlalot. Ha nagyon sokaig nem jon valtozas, akkor kilep.
Igy gondoltam lejatszom neki az egy masodperces 1 khz negyszoget es akkor 1000- et kell kapjak a szamlaloban vagy 2000- et, nem tom mi szamit egy ciklusnak.

Eloszor lefuttattam jel nelkul, tesztkent, es mar ez meglepo volt, mert ugy ter viszsa a kod jel nelkul, hogy par (5 vagy 20, vagy 76, vagy ilyesmi szamot, valtozot) valtozast detektal, mire lejar a hosszu ido, hogy ha addig nincs valtozas, akkor kilepjen.
Magyarul a bit nem stabil. Hanem jel nelkul is billeg.
Ha kihuzom a PC- t az EP-bol, es nem dugok ra semmit ( hangbemenetre ) akkor nem billeg.

Amikor az egy kilohercet szamoltattam megvele, akkor 1700 koruli szamot adott. Hat ez eleg sz**...


Itt a kod, valakinek valami tippje, hogy miert billeg jel nelkul, es hogy miert nem kapok 1000- et vagy 2000- et az 1KHz -s negyszogjel eseten ? :



JAVITOTTAM A HSZ- T. EZ MAR A JO KOD:





   org      2000h

   di

   in      a,(0b5h)
   and      0bfh
   out      (0b5h),a

   call Count

   ei

   ret

MemFill:

   ld      hl,4000h

L0:
   in      a,(0b6h)
   and      80h
   ld      (hl),a
   inc      hl

   ld      a,0b0h
   cp      h
   jr      nz,L0

   ret

Count:

   ld      hl,0
   ld      bc,8000h
   ld      de,100h

   ;exx
   ;ld      hl,0
   ;ld      de,0
   ;exx

L1:
   in      a,(0b6h)
   and      b
   cp      c
   jr      z,NoChange

   ld      c,a
   inc hl
   ;exx
   ;ex      de,hl
   ;ld      bc,1
   ;add      hl,bc
   ;ex      de,hl
   ;ld      bc,0
   ;adc      hl,bc
   ;exx
   ld      de,100h
   jr      SkipNoChange

NoChange:

   inc      de

SkipNoChange:

   xor      a
   or      d
   jr      nz,L1

   ret




A Count szubrutin visszatertekor a HL- ben adja meg hogy hanyszor valtozott meg az input bit.

Ha betesszuk a kommentes reszeket akkor meg a shadow regiszterek kozul HL,DE -ben.








« Last Edit: 2009.November.11. 01:25:06 by Z80System »
Z80 System

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Links 2.1pre30 Links 2.1pre30
    • View Profile
Magnós frekvenciák
« Reply #19 on: 2009.November.10. 21:39:16 »
Igy gondoltam lejatszom neki az egy masodperces 1 khz negyszoget es akkor 1000- et kell kapjak a szamlaloban vagy 2000- et, nem tom mi szamit egy ciklusnak.

2000-nek kellene lennie, mert a kód a fel- és lefutó éleket is figyeli.

Quote
Eloszor lefuttattam jel nelkul, tesztkent, es mar ez meglepo volt, mert ugy ter viszsa a kod jel nelkul, hogy par (5 vagy 20, vagy 76, vagy ilyesmi szamot, valtozot) valtozast detektal, mire lejar a hosszu ido, hogy ha addig nincs valtozas, akkor kilepjen.

Talán a zajt érzékeli a bemeneten. De ha van tényleges bemeneti jel, akkor abba (remélheto"leg) nem kerülnek véletlenszeru"en hibák.

Quote
Amikor az egy kilohercet szamoltattam megvele, akkor 1700 koruli szamot adott. Hat ez eleg sz**...

Lehet, hogy nem volt megfelelo" a jel szintje ? Vagy nem pont 1 másodperc volt a hosszúság ? Természetesen azzal is számolni kell, hogy amikor még (vagy már) nincs 1 kHz-es jel, akkor a zajt is hozzáadja a mért értékhez.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #20 on: 2009.November.10. 21:54:26 »
2000 az ok lett volna, de ez 1700 koruli ( 1693, 1734, stb. ) ertekeket szamol. Ha 2000, 2001, vagy 1999 lenne azt elfogadnam mast nem tok.

A jel nel nelkuli mukodoest (zajt) ismerve elfogadnek akar 1900- 2100 -ig is ertekeket. De 1700 az keves.

Milyen zaj lenne ? Akkor a hangkatyim zajos ?



Jelerosseg. Eleg gyenge a hangkatyim kimenete, nem mozditja at maxi hangeron sem a standard toltestkijelzot a pirosba egyszer sem, de azert a standard toltes teljesen zolden is mukodik.



1 mp. Ha t az audacity -nek azt mondtam, hogy generealj egy 1.00 masodperces 1000 Hz -es mintat. Es azt jatszom le teljes egeszben. Hat en most nem szamolom megbenne az ezer valtast ... :)


Legeloszor a zajt kene kiutni a dologbol ... Nincs kedve valakinek kiprobalni a dolgot... hogy ez az en hangkartyam miatt van, vagy az EP bemenete ilyen zajos, mert ugy tunik ez a zaj nem problema az eredeti toltesnel, tehat akar az EP resze is lehet... bar azert ezer 2000 helyett 1700 -at szamolni az durva.... igy nem tom hogy merhetnekbarmit is ... ha ez tenyleg a zaj miatt van ...




« Last Edit: 2009.November.10. 21:57:44 by Z80System »
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #21 on: 2009.November.10. 22:00:02 »
Mondjuk szemmel nezve a jelet nem tul szep, eleg trapezos .... nem tud valaki adni nekem egy 1 masodperc 1khz tomoritetlen sample- t. tehat tomoritetlen wav, nem mp3.

Z80 System

Offline szipucsu

  • EP addict
  • *
  • Posts: 8068
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Safari Safari
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Magnós frekvenciák
« Reply #22 on: 2009.November.10. 22:13:43 »
Mondjuk szemmel nezve a jelet nem tul szep, eleg trapezos .... nem tud valaki adni nekem egy 1 masodperc 1khz tomoritetlen sample- t. tehat tomoritetlen wav, nem mp3.
Nem tudom, ilyenre gondoltál-e... mondjuk szinuszhullám lehet, nem négyszögjel.

UI: Túl kell vezérelni (pl. Cool Edittel), akkor négyszögjel lesz belõle, bár lehet, az kicsit "hentes" megoldás.
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Links 2.1pre30 Links 2.1pre30
    • View Profile
Magnós frekvenciák
« Reply #23 on: 2009.November.10. 22:15:14 »
Mondjuk szemmel nezve a jelet nem tul szep, eleg trapezos .... nem tud valaki adni nekem egy 1 masodperc 1khz tomoritetlen sample- t. tehat tomoritetlen wav, nem mp3.

Próbáld ezt futtatni emulátoron:
  * 1khz.com (0.14 kB - downloaded 141 times.)

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #24 on: 2009.November.10. 22:26:51 »
eszem all meg ...

az 1khz.com -on 1707 -et szamolt.

namost az elotte kapott wav az egy 3 mp- es szinuszjel. azon 5103 -mat szamolt.

namost mennyi 1700 * 3 ? :)

= 5100 ! :)

Na most ez mi ? :)


Z80 System

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13519
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.5.5 Firefox 3.5.5
    • View Profile
    • http://enterprise.iko.hu/
Magnós frekvenciák
« Reply #25 on: 2009.November.10. 22:32:09 »
Eleg gyenge a hangkatyim kimenete, nem mozditja at maxi hangeron sem a standard toltestkijelzot a pirosba egyszer sem, de azert a standard toltes teljesen zolden is mukodik.
TAPE LEVEL-t is felnyomtad az emulált gépen mentéshez?
Nekem azzal együtt simán piros lesz!

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Links 2.1pre30 Links 2.1pre30
    • View Profile
Magnós frekvenciák
« Reply #26 on: 2009.November.10. 22:33:56 »
eszem all meg ...

az 1khz.com -on 1707 -et szamolt.

namost az elotte kapott wav az egy 3 mp- es szinuszjel. azon 5103 -mat szamolt.

namost mennyi 1700 * 3 ? :)

= 5100 ! :)

Emulátoron mit ír ki a WAV-ot magnó image file-nak használva ? Ha ott is csak 85%-ot, akkor talán a programban lehet valamilyen hiba.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #27 on: 2009.November.10. 22:37:46 »
Hat a piros tape level az az emurol valo betolteshez kene, de reszint zolden is megy ugye a betoltes mint kiderult altalad, masreszt pedig feltoltam maxira, es ugyis zold volt.

De ugye mostmar nem rendes magnoval toltok, hanem azt a sajat teszt beolvasot futtatgatom, ott mar ugye nincs tape level kocka... :)


Es most kiprobaltam egy 500Hz -es negyszogjelet is, hatha az 1700 az a felso limit, es ezert nem megy el ketezerig. Nos az 500Hz- nel 1 masodperc alatt, 831- et szamolt. Es nem ezret.

1700/2000 = .850
831/1000= .831


hö ?  :)




Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7 Windows 7
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Magnós frekvenciák
« Reply #28 on: 2009.November.10. 22:52:07 »

Az a baj hogy nem indul el a lejatszas. Ha basicban kikapcsolom a remote- t, akkor mikor atlepek asmonba akkor ujra visszaall a remote toggle.

Vagy kene trukk asmonbol remote allitasra, vagy az asm kodbol kene valami trukk az eleresre, vagy pedig meg kene tanits ilyen gyors com gyartasra, amivel basicbol el tok inditani ilyen progit.

Inkabb az elso ketto kozul lenne jobb valamelyik...
Z80 System

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13519
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.5.5 Firefox 3.5.5
    • View Profile
    • http://enterprise.iko.hu/
Magnós frekvenciák
« Reply #29 on: 2009.November.10. 22:56:24 »
Most kipróbáltam egy olyat, hogy az emus EP-t turbózom, így kb 5.168 Mhz a határ amit az alap 4 Mhz-es gép betölt. (emu beállítások: 5168000 CPU frq, 646000 Sound frq)