Welcome, Guest. Please login or register.


Author Topic: Új HW - taszt-toldozás (Read 98821 times)

Offline szalai56

  • EP user
  • *
  • Posts: 291
Re: Új HW - taszt-toldozás
« Reply #225 on: 2014.October.09. 22:54:48 »
Nálam van egy működő Ep ezzel az AVR-rel. Ha kell oda tudom adni és abból elvben hibátlan a program.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: Új HW - taszt-toldozás
« Reply #226 on: 2014.October.26. 19:16:08 »
Lgb! Ha már elkezdted visszafejteni a cuccot (régi géped vinyóján nem lett meg? :oops: ), azt nem tudod, hogy keyboard map-ok hol vannak tárolva, és mi a formátuma? Gondolom a PC sacn kódok és hozzá valahogy az EP billentyűk.

A német srác utánépítette, és működik is neki, csak az a baja, hogy nincs minden gomb a helyén. Ha tudjuk hol a táblák, akkor talán rendbe lehetne tenni neki :-) Gyanítom német kiosztás nem volt a tervezéskor :oops:

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Új HW - taszt-toldozás
« Reply #227 on: 2014.October.26. 19:45:36 »
Lgb! Ha már elkezdted visszafejteni a cuccot (régi géped vinyóján nem lett meg? :oops: ),

Elkezdtem, raneztem par byte kodra benne, ami az int handler :) persze a tobbit is megnezhetem eppenseggsel, de az mar nem csak par byte :) A regi gepem vinyojat kene elobb megtalalni, utana megmondom, hogy rajta van-e. Sot, eloszor a regi gepemet, amiben valoszinuleg meg van (koltoztunk, eleg ha annyit mondok ...).

Quote
azt nem tudod, hogy keyboard map-ok hol vannak tárolva, és mi a formátuma? Gondolom a PC sacn kódok és hozzá valahogy az EP billentyűk.

Nem tudom konkretan, de en gyanitom, hogy az nem flash-en van hanem az EEPROM-jaban az AVR-nek. Eleve ugy remlik, masreszt az a logikus is, ha az ember ilyet csinalna. Persze tevedhetek is, csak tipp (az is lehet ott csak extra "kombinaciok" stb vannak, es par dolog flash program szerint fix?). Amit kuldtel AVR "binaris" az az U27.EEP elvileg (az EEPROM tartalom). Az persze igaz, hogy ez nem feltetlen ad valaszt: pontosan milyen formatumban kell ertelmezni ezeket az adatokat?

Quote
A német srác utánépítette, és működik is neki, csak az a baja, hogy nincs minden gomb a helyén. Ha tudjuk hol a táblák, akkor talán rendbe lehetne tenni neki :-) Gyanítom német kiosztás nem volt a tervezéskor :oops:

Hat, amint elokerul gepem/vinyom/file forras lesz. Ha nem lesz, megprobalom avr disasm-bol kitalalni, bar ahhoz tul sok kedvem nincs, de mar engem is edegesit, hogy nincs forras .... Grrr.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: Új HW - taszt-toldozás
« Reply #228 on: 2014.October.27. 10:55:48 »

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Új HW - taszt-toldozás
« Reply #229 on: 2014.October.27. 12:51:30 »
Közben találtam némi leírást :oops:

Uh. Van par lepes benne ... Tegnap csak azt neztem, hol es mire hasznal LPM-et (ez a program memoriabol - flash - tolt be egy byte-ot), mert az gyanus, hogy kell. Viszont disasm szinten remalom a kod, nagyon fura dolgokat muvel, az is lehet, hogy egy resze C-ben van irva es onnan forditva, azert ilyen ...

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Új HW - taszt-toldozás
« Reply #230 on: 2014.October.27. 13:12:58 »
Igen, bennem is felmerült az a gondolat, hogy tigrian is csak a megszakokat írta assembly -ben,

mert ott furcsállottad hogy egy megszak végén xor -olással nulláz egy regisztert,

na az pld. a C fordítónak nullán kell legyen.

Tehát az avr C fordító az r0 -át temp regiszternek használja, amit egy megszaknak meg kell őriznie, az r1 -ben pedig folyamatosan 0 -át tart, amit a megszaknak szintén meg kell őriznie ...
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Új HW - taszt-toldozás
« Reply #231 on: 2014.October.27. 15:48:07 »
Most igy belegondolva, azert erdekes ez a taszt-illeszto tema. Ugye a WR0-ra aktivizalando interrupt handler stb kerdeset mar boncolgattuk. Viszont tenyleg lehet olyan software ami nem szo szerint scanneli a kbd matrixot, hanem beallit egy sort (ott van pl a gomb ami erdekli) es csak olvasgatja a B5-os portot minden iras (kbd row kivalasztas) nelkul. Na ugye ez problema, es nem is igazan kikerulheto :( Ugyanis, ha csak a WR0-ra aktivizalando interrupt handler-ben irjuk ki a kerdeses kbd row allapotat, akkor ugye "scan" nelkul eszre sem fogja venni az EP a valtozast :( Ennek elkerulese viszont nem olyan egyszeru! Lehetne az, hogy a PS/2-n barmi valtozas hatasara az interrupt handleren tul is, megnezzuk, hogy a layout transzformacio utan a kivalasztott row-ba esik-e, ha igen, kiitjuk a valtoztatott byte-ot. Igen am, de itt versenyhelyzet van, mi van, ha ezen kuveletunk kozben ir az EP pont a B5-os portra? Akkor mi rossz row-t fogunk kiirni ... A megoldas vmi olyasmi lehetne, hogy letiltjuk az interrupt-ot amig a fenti tevekenyseget vegezzuk, akkor viszont tul nagy lesz a delay a WR0 es az esetleg kozvetlenul utana jovo RD0-hoz kepest, es "lecsuszunk" rola, az eredmeny megint az lesz, hogy rossz row allapotat kapja meg ez EP. Lehetne RD0-ra is egy masik kulso interrupt stb, de itt is latom a problemat, hogy nehez a ketto kozott igazsagot tenni, ugymond.

Hacsak nincs egy bazi gyors MCU-nk tenyleg, akkor nem is tudom, hogy ez a problema megoldhato-e ... Legalabbis MCU-val, nyilvan custom hw-el (crosspoint switch IC, dual port RAM ..) igen. Azt se tudom, hogy ezt a problemat a Tigrian fele illeszto hogy oldja meg, ha megoldja egyaltalan (Zozo altal adott wiki oldalon is ir valami hasonlot, hogy "force" muvelet ha egy software nem scannel ahogy "illik" ...).

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Új HW - taszt-toldozás
« Reply #232 on: 2014.October.27. 15:59:04 »
Hát ez bizony így van ... jó sokszor lett már említve ez ... akkor most már te is "köztünk vagy" ... :)
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Új HW - taszt-toldozás
« Reply #233 on: 2014.October.27. 16:14:07 »
Közben találtam némi leírást :oops:

Masik eszrevetelem: na itt Tigrian irja is, hogy van kesleltetes itt-ott, tehat ez lehet "szandekos" is, amit emlitettel meg regebben, hogy "lassan reagal" EP billencshez kepest. Az a baj, hogy ilyen "advanced" megoldas (mapping-ek, nem egy PS/2 gomboc felel meg egy EP gombocnak, es kesz) nem is teljesen kikerulheto ez: ami pl PC billencsen shift-elt lenne EP-n meg nem (vagy forditva, vagy barmi kbd kombo) ott ugye gond, hogy pl a shift megnyomasanak pillanataban shift-et "lenyomja" az emulalt kbd matrixban, amde ha shift melle nyomunk vmit, amirol aztan kiderul, hogy az egy olyan karakter ami EP kbd-n nem shift-elve kell reprezentalni, akkor meg ugye erdekes ... Akkor shift-et "elengedi" esetleg, amde a plusz shift ami elotte volt ... Az ugye rosszabb esetben EP-n be is zavar, mert pl kbd scan-nel meg latja a shift-et amikor "ott jar". En ezert is mondtam mindig, hogy en annak a hive vagyok, hogy tok egyszeru mapping legyen, szoval mintha kb EP gombokat 1:1-ben megfeleltetnenk PC gomboknak (az meg belefer, hogy pl egyes nyelvi billencseken mondjuk ket betu fel van cserelve ...). Ugyanis, ha bonyolultabb dolgokat akarunk, mindig hasonlo problemakba utkozik az ember.

Amugy pont uez a gond az emulatoroknal is, ahogy JSep-nel is egyszer kifejtettem, hogy hol a kettospont, miert nem ott van ahol a PC billentyuzeten lenne (meg US kiosztas eseten sem!), stb :)
« Last Edit: 2014.October.27. 16:27:06 by lgb »