Keresés

Részletes keresés

Törölt nick Creative Commons License 2020.04.17 0 0 9622

Én tegnap addig jutottam ,hogy letöltöttem a legutolsó VICE-t, amiből találtam Win binárist....(3.4-x64).. (mert a 3.1-x64 ben semmit nem csinált a kód, csak a sarokban vibrált a pont)

 

A 3.4-x64 az agyamat kikezdte, mennyire -és miért?!?!- linux like a GUI, illetve miért nem úgy működik a drive emuláció, ahogy megszoktam, stb.

 

Miután evvel mind megküzdöttem, nagy nehezen sikerült annyit elérnem, hogy az egér már fel-le mozog, jobbra balra nem.

 

Nemtudom ez a bszgg féle kód 3byte-os csomagot eszik-e,.....  éppenséggel lehet az az adatvesztéses móka van, amit írsz,...

....bár fura, miért mindig az X adat vész el,..

..illetve ha nagyon megrántom az egeret, a felső biteknek is ugrani kellene, (ami byte pedig tuti "átmegy", mert gombok azok vannak).

 

Mondjuk hozzátartozik a történethez, hogy 0 kedvem volt fizikai egérrel szívni, egyszerűen fogtam a tcp-sorosegér-emulátort, amit dosboxhoz írt egy srác, socat-al összekötöttem a két portot és tadam.

 

Eleinte ráfogtam az emulátorra, biztos rossz, de ma melóban gyorsban írtam egy PS script terminált, ami gyönyürűen eszi és elemzi a TCP 3byte-okat, és 100% működést mutat, vagyis nem az emu a rossz, fura is lenne, mert dosbox-osok lelkendeznek, hogy mennyire tuti, innentől a vice sorosport nem eszi a byte-okat normálisan.

 

Abból sem értek (még) semmit, ami byte-ot írtál ,hogy a kódban módosítani kell, ha azt én átírom, semmi működés nincs, visszajutok oda, hogy áll az egész, és meg sem moccan.

 

Sajnos pluszin még gyorsban "ellenőrizni" sem tudom a soros portot, assemblyben nincs lelkierőm, megszakítás, összes bit felkódolás, stb megírni (kb ennyi erővel ~nulláról az egér drivert írhatom újra)

 

Basicben meg egy hangot nem találtam, hogyan nyitható meg (legalább olvasásra) az RS232...próbáltam hátha C64-el kompatibilis, végülis commodore basic..  nem akart működni.

 

Végül mindenféle rég elfeledett terminálokat keresgéltem, de tragikusak, mind egész sornyi szöveget akar venni, enter-ig, modemet kezelni meg ilyenek.

 

Előzmény: tanárnéni kedvence (9616)
tanárnéni kedvence Creative Commons License 2020.04.17 0 0 9621

A mi a fene kezelné felvetést kiterjeszthetnénk az egész témára. :) Amúgy bármi, pl. többfegyveres shoot'em-up.

Előzmény: MMSZoli2 (9620)
MMSZoli2 Creative Commons License 2020.04.16 0 0 9620

Alapvetően a (Microsoft) Serial mouse protokollt érdemes követni.

Egyrészt a legelterjedtebb, másrészt rövidebb (3 bájtos) a csomag, harmadrészt a harmadik gombot mi a fene kezelné? (5 bájtos Logitech mouse szabvány)

A Bus mouse teljesen más és külön kártya kell a dekódoláshoz, az egér önmagában csak szenzorokból áll.

 

Az A4Tech, Genius és Microsoft egerek a Microsoft mouse protokollt használták. Ezekbe a legkönnyebb belefutni a használt piacon is.

 

siz Creative Commons License 2020.04.16 0 0 9619

Ja, igazából nem neked szántam, csak a te hozzászólásodban könnyebb volt megtalálni :D

Előzmény: tanárnéni kedvence (9618)
tanárnéni kedvence Creative Commons License 2020.04.16 0 0 9618

Én nem említettem senki (ál)nevét mostanában, nem is mondanak nekem semmit. A híresebbek közül is csak Kosir Loncsi Godzilla Mad Attilát ismertem. De nehogy összekeverjétek a másik Maddel! ;)

Előzmény: siz (9617)
siz Creative Commons License 2020.04.16 0 0 9617

Annyit tennék hozzá a dologhoz, hogy BSZ (aki a SID kártyát csinálta) és a soros egérrel küzdő srác, aki itt bszqqq néven volt nem ugyanaz, szóval ne keverjétek, lécci.

Előzmény: tanárnéni kedvence (9616)
tanárnéni kedvence Creative Commons License 2020.04.16 0 0 9616

Előbb teljesen meg kell(ene) érteni ezt a bsz féle kódot

 

Ebben tudok segíteni. Kérdezzetek, ha valami nem világos.

Többnyire az ismeretlen egerek protokolljának a felderítése sem gond, ha már más gond nincs.

Előzmény: Törölt nick (9615)
Törölt nick Creative Commons License 2020.04.15 0 0 9615

Az 1351 egy kényszermegoldás, a C64-en eredetileg 2db potméteres paddle-nak szánták (azok a vicces tekergetős cuccok a 70es évek elejéről az un "tévéjátékokról") a SID két analóg portját, aztán úgy alakult, hogy erre fejlesztett a MOS egy optikai- kapu-->végtelenített-potméter emulátor egzotikus cél-chip-szörnyszülöttet, megoldva az amúgy is ritkán használt analóg portokkal az alacsony gépigényű analóg elmozdulás érzékelést.

 

De akkoriban a professzionális világban sem volt az egér gyakori, kb mi is akkor fogtuk meg, ha a már nem emléxem miféle C64 rajzprogrammal, vagy a final3-mal variáltunk.

 

A pluszira, ahol kb semmiféle kváziszabványos egér-szoftver nincs, még annyi sem, mint C64-re, teljes agyrém a SID+1351 kombó, kétségtelen ,hogy működik, de total overkill.

 

Néhány soros protokollt tudó egérhez semmi nem kell egyébként, mivel eleve 5V-osak, hiszen PS2 egerek..(csak az átalakítót rádugva "beszélik" valamelyik(!) soros protokollt is)

 

ÉS akkor itt jön az első amivel szerintem szívtok, a soros egér is ahány ház, annyi szokás, a PS2 egerek pl a legtitokzatosabb módokon próbálják "eldönteni", soros portra dugták-e valami konverterrel őket, tehát melyik protokollal is kell beszélgetni..

 

De, ha echte original soros egeret találtok és dugtok be, az sem mind kezdi ám azonnal mondani mit mozog!

 

Néhány kifejezetten elvárja ,hogy kapjon valami soros parancsot, a gép (egér driver) "piszkálja" a DSR-CTS stb vonalakat, (ahonnan a tápot ezek az egerek "lopják"), és még ha ez meg is van mind, legalább 3féle sorosegér protokol létezik, és ezek nyelvjárásai!

Előbb teljesen meg kell(ene) érteni ezt a bsz féle kódot, és utána lehet abból találgatni, neki milyen egere is volt, majd olyat kell találni, ami szintén nem kis mutatvány, lévén egy egérre sincs ráírva, melyik nyelveket és milyen tájszólásban beszéli.

Már egy win85 egérdrivere is majd 100 kilobyte, és rengeteg figurát tud, a logitech spéci dialektusától a microsoft original és módosított nyelvjárásaiig.

 

(és még így is volt olyan, hogy PC-n ha nem az elején, bootoláskor dugtad be az egeret, bizony az nem "indult el", állt  szépen az egérnyíl ahol volt..)

 

 

Előzmény: MMSZoli2 (9614)
MMSZoli2 Creative Commons License 2020.04.14 0 0 9614

Egyébként válaszolva kérdésre: egy 1351 + SID kártya együtt kb 45 ezer forintra jön ki, ha Valaki nulláról kezdi (ebből 60€+ PP (kb 22 ezer) a SID kártya))

Könnyen összejöhet egy 60 ezres számla is, ha Valaki impulzus vásárló, meg nem talál Európában eladót.
(az az alap, hogy  floppy egység kellett a C64-hez, hogy legyen rá egeret támogató SW, és ez inkább az USA-ra volt jellemző)

 

Szerintem ez az alsó hangon is 40 ezer Ft azért elég húzós.

 

Ezt kell szembeállítani az alábbi költségekkel

-2000-2500 Ft-os User port csatlakozó

-Max232 áramkör TTL-RS232 (800-1500Ft)

-Dupont kábelek (ha annyira nem szeret forrasztani, mint én) 500Ft 

-RS232 anya/anya fordító csatlakozó - (1000Ft) Max232 és az egér is apa csatlakozós    

-forrasztóón + idő

 

Eddig kb 6000Ft, erre jön még az RS232 csatlakozós egér (vagy egy PS/2 egér + PS/2--> RS232 konverter, ha így is működik, nem tudom, szerintem nem garantált).

Jó esetben a padláson van egy félrerakott darab, vagy van egy lúzer haverod, aki nem tudja mennyi ér és megveszed Tőle 1000Ftért. :-)

 

Az eBay-en valóban szálltak egy kissé az árak, de mi MO-on élünk :-)

 

Nem irreális cél keresni és leütni egyet pár ezer forintért, találni egy PC bontóban vagy gyűjteményben:

1500Ft fix
https://www.vatera.hu/genius-easymouse-golyos-retro-eger-soros-csatlakozoval-fsugmze3-2899850921.html

 

Ki tudja mennyi lesz a vége: 

https://www.vatera.hu/retro-genius-eger-2900682509.html

 

Szintén: 

https://www.vatera.hu/genius-easymouse-golyos-retro-eger-soros-csatlakozoval-fsugmze3-2899850921.html

 

És még extrém példányok is vannak 1000Ft körül

https://z-shop.hu/Dextra-HTB02-soros-hanyatteger-RS232-RS-232

 

Végső elkeseredésünkben akár a Jófogáshoz is fordulhatunk, de nekem két ismerősömet is átverték rajta az elmúlt 5-6 évben. 1000Ft

https://www.jofogas.hu/budapest/Genius_Retro_eger_101916673.htm

 

Előzmény: ergoGnomik (9590)
MMSZoli2 Creative Commons License 2020.04.14 0 0 9613

OK, elfogadom, hogy benéztem! Soha nem volt kedvencen a binárisan kódolt negatív egész számokkal végzett műveletek.

Előzmény: tanárnéni kedvence (9612)
tanárnéni kedvence Creative Commons License 2020.04.14 0 0 9612

Úgy értettem, hogy a tárgyalt kódban nincs ilyen. (De a tanulmányaimon kívül sem láttam még a gyakorlatban.)

Előzmény: MMSZoli2 (9611)
MMSZoli2 Creative Commons License 2020.04.14 0 0 9611

Létezik egyes komplemens, csak ritkán használják, mert bonyolult a nullák (!) lekezelése.

(mondjuk számomra a kettes komplemens is túl bonyolult, maradjunk a BCD-nél :-) )

Nekem az egyik ugrás annak idején úgy tűnt, hogy pont ezt ellenőrzi. De lehet,hogy csak sok sört ittam, és duplának láttam a nullát :-D

Egyes komplemens képzés

Mivel ez azt jelenti, hogy formailag, mint bitminta sem egyezhetnek meg egymással (mert nem lehet olyan pár, ahol a pozitív és a negatív elem bitmintája azonos) és mivel egy helyi értéken két alaki érték lehet, 0 vagy 1, ezért a két diszkrét halmaz szétválasztására az alaki elemek formális felcserélésével is juthatunk. Ez világosabban fogalmazva azt jelenti, hogy ahol egy pozitív szám esetén egyest írunk, ott ugyanannak az elemnek a negatív párja esetén nullának kell állnia. Ez pedig nem más, mint a korábban a digitális alapoknál már jól ismert bitenkénti invertálás vagy negálás. Tehát most már rutinosan egy pozitívan ábrázolt számból a negatívba bitenkénti invertálással jutunk és fordítva. Ez a művelet az egyes komplementer képzés.

és ez az egyes komplemens ábrázolásnak az egyik legnagyobb hátránya. (Vagyis két nulla van, és ezért írtuk korábban, hogy majdnem igaz az, hogy a negatív számok és a pozitív számok számossága a két nullával azonos, de a valóságban nincs két nulla, hanem a nulla nem tartozik egyik tartományhoz sem.) A hátrányt a számítási eredményeket végző digitális számító művek felesleges bonyolultsága jelenti, mert fel kellene készülni a pozitív és negatív nulla keletkezésére és a vele való műveletekre is.

Előzmény: tanárnéni kedvence (9609)
MMSZoli2 Creative Commons License 2020.04.14 0 0 9610

Valóban. Bocs a dezinformációért

 

Papíron fejtettem vissza (nekem úgy kényelmesebb, mert jobban átlátom,nyilak, miegymás :-) ) de visszanézve a 610C egy PLA-s rövid rutinra mutat, ami visszaugrik $60D6-ra.

 

Ez a kódrészlet nekem teljesen hiányzik a papírról és helyette a BRK van és onnan is folytatódik :-O

. 610C 68 PLA
. 610D C9 14 CMP #$14
. 610F F0 03 BEQ $6114
. 6111 4C D6 60 JMP $60D6

 

A valós hardverre mikor bepötyögtem a papírról (még nem volt SDs cuccom, illetve x1541-em), akkor meg szintén BRK-val állt le, szerintem pont a hiányzó kódrészlet miatt. Oooops.        

 

Most a YAPE-n visszalép egy Syntax error keretében, de ez normális. Tényleg össze kel raknom a konfigot egy újabb tesztre, már van SD kártyás cuccom is.

tanárnéni kedvence Creative Commons License 2020.04.14 0 0 9609

„Pl. a kód elején levő JMP $610C konkrétan egy BRK-ra mutat”

 

Ez nem igaz. A 6114-en volt BRK, ha jól emlékszem, de talán oda nem ugrott a kód 610f-ről, amikor tesztelték.

 

Szerintem akkor kezdjél a kódon rövidíteni, ha a meglévő már működik.

Én nagy nehezen GNU/Linuxon patch-elt xplus4-gyel látom, hogy a hibák ellenére elvileg működhet, bár a soros egerem is hibás, meg szerintem az emu is (tcsetattr is hibádzik). A 603b-t át kellett írnom b8-ra, hogy bármi is működjön az emuban.

 

5000: in idx
5001: in1
5002: in2
5003: in3
5004: buttons
5005: hmotion
5006: vmotion

5008-9: hpos
500a-b: vpos

5010-11: hpos/2
5012-13: vpos/2

(big endian)

 

Nincs egyes komplementer, sima kettes van.

Előzmény: MMSZoli2 (9607)
MMSZoli2 Creative Commons License 2020.04.14 0 0 9608

Az a jó hosszú komment, amit tegnap írtam, az sajnos elszállt, mostanában (a legutolsó Win10 frissítés óta) rendszeresen lefagy a felhasználói felületem, egyáltalán nem reagál a kattintásokra.

Most nincs már energiám újra begépelni. (Egyébként pont ismét lefagyott, b*sszus, szinte csak a billentyűzetre reagál, meg itt-ott az egérre). Ezek a gombok az "elküldöm" gombok még épp működnek...

 

Tömören:
-az ACIA/UART/6551 felprogramozása a kód legelején kifejezetten olyasmi, amit elég ritkán látni, keveset van használva.

-a későbbi bitpakolászás teszi ki a kód legnagyobb részét.

-Az egér alapvetően elmozdulást küld, ami lehet negatív vagy pozitív, és ha jól értelmeztem, a kód egyes komplementer móddal dolgozik a negatív számok kezelésénél, és őszintén szólva egy idő után elveszettem a fonalat.

 

MMSZoli2 Creative Commons License 2020.04.14 0 0 9607

Nem, ez az eredeti bszggg verzió.

 

Azért ezt másoltam be, mert:

1) nem akartam az általam szétbarmolt kódot berakni, ami szintén nem működik, de még azt sem hihetem, hogy működött volna, mert bszggg-nek van legalább egy screenshot-ja, hogy ez az eredeti (valamelyik változatában)  működhetett :-)

Pl. a kód elején levő JMP $610C konkrétan egy BRK-ra mutat, de NOP-ra cserélve sem lett jobb :-)

 

2) A kommentezést és a kód értelmezését csak papíron csináltam meg, de a kommentek nem lettek begépelve.
Színes nyilakkal jelöltem magamnak az ugrásokat, zölddel a feleslegesnek gondolt parancsokat, stb.

 

Nekem az egyik főbb célom a kód lerövidítése volt, hogy beférjen a nulláslap itt-ott találhat réseibe (tape buffer 191 bájt, speech buffer 141 bájt, ha már ugrálni kell, tök mindegy, hová)

A NOP-okból van 17, de monitorban fejlesztés során elég sok ilyet szét kell szórni.

 

A kód értelmezésekor merült fel, hogy nem lenne-e jobb egy bájton tárolni a X koordinátát, sokkal kevesebb bit-toszogatás kell, kb 40-45 bájttal lehetne rövidebb a kód.

 

 

tanárnéni kedvence Creative Commons License 2020.04.13 0 0 9606

Kösz, ránéztem. De korábban azt írta, hogy visszafejtette, kommentezte, javította, és ezt nem látom.

 

A kód valóban tökéletlennek tűnik, de nekem nem fagy tőle az emulátor. Megszakításkezelőben ne legyen BRK, úgyhogy kezdetnek 6114-re betennék egy NOP-ot.

Előzmény: kisbetu (9605)
kisbetu Creative Commons License 2020.04.13 0 0 9605

Ott a link, aztán tán bal oldalt a fejlesztések alatt kell keresni, görgetni lefelé.

Előzmény: tanárnéni kedvence (9604)
tanárnéni kedvence Creative Commons License 2020.04.13 0 0 9604

Felraktad, felrakod valahova a kódot, hogy ránézhessünk?

Előzmény: MMSZoli2 (9602)
MMSZoli2 Creative Commons License 2020.04.13 0 0 9603

bszggg kódja - minden tiszteletem mellett, mert a géphez (meg sok minden máshoz is) nálam sokkal jobban ért- egy klasszikus spagetti kód, oda-vissza ugrásokkal, a programkód BRK-kal itt-ott megszakítva.

 

Ha meg tudod javítani, és működik a rezidens kód, ami az RS232 egér mozgását a User portról X és Y koordinátákra fordítja (még ha nem is fér bele nulláslapba) Tiéd a karton sör, sőt még küldök ingyen egy RS232 egeret is. Az értékét már nagyjából sejtheted.

http://bencsikszilveszter.hu/plus4/plus4/plus4.htm

ez van fent letölthető állományként. $6000-re van éve a kód és $5000 és $500A közé kerülnek az adatok (X, Y, gombok állapota)

 

BRK

RTS
SEI
LDA #$00
STA $FD01
LDA #$38
STA $FD03
LDA #$05
STA $FD02
NOP
LDA #$00
LDX #$00
INX
STA $5000,X
CPX #$0F
BEQ $6023
LDY #$00
BEQ $6017
NOP
LDA #$36
STA $0314
LDA #$60
STA $0315
CLI
RTS
NOP
NOP
NOP
NOP
BRK
JMP $CE0E
LDA $FD01
PHA
CMP #$98
BEQ $6043
JMP $610C
PLA
LDA $FD00
PHA
AND #$40
BEQ $6059
PLA
STA $5001
LDA #$01
STA $5000
LDY #$00
BEQ $6035
LDA $5000
CMP #$01
BNE $606C
PLA
STA $5002
LDA #$02
STA $5000
LDY #$00
BEQ $6035
PLA
STA $5003
LDA #$00
STA $5000
NOP
NOP
NOP
NOP
NOP
LDA $5001
AND #$30
STA $5004
LDA $5001
CLC
ASL
ASL
ASL
ASL
ASL
ASL
ORA $5002
STA $5005
LDA $5001
LSR
LSR
CLC
ASL
ASL
ASL
ASL
ASL
ASL
ORA $5003
STA $5006
NOP
CLC
LDA $5005
BMI $60C2
NOP
LDA $5005
ADC $5009
STA $5009
LDA $5008
ADC #$00
STA $5008
LDY #$00
BEQ $60DB
CLC
LDA $5005
ADC $5009
STA $5009
LDA $5008
SBC #$00
STA $5008
LDY #$00
BEQ $60DB
JMP $CE0E
NOP
CLC
LDA $5006
BMI $60F8
NOP
LDA $5006
ADC $500B
STA $500B
LDA $500A
ADC #$00
STA $500A
LDY #$00
BEQ $60D8
CLC
LDA $5006
ADC $500B
STA $500B
LDA $500A
SBC #$00
STA $500A
LDY #$00
BEQ $60D8
PLA
CMP #$14
BEQ $6116
JMP $60D6
BRK
NOP
LDX #$00
INX
STA $5000,X
CPX #$03
BEQ $60D8
JMP $6118
SEI
LDA $5008
CLC
LSR
STA $5010
LDA $5009
ROR
STA $5011
CLC
NOP
NOP
LDA $500A
CLC
LSR
STA $5012
LDA $500B
ROR
STA $5013
CLC
CLI
RTS
SBC
BRK
BRK
BRK

MMSZoli2 Creative Commons License 2020.04.13 0 0 9602

Egyébként nem értem, mi a gond az érvelésemmel.

Szerettem volna csinálni egy Mindenki által könnyen és olcsón elérhető egeret Plus/4-hez. Ha visszanézed, már 2010 előtt foglalkoztam a témával a Plus4wolrld-ön

 

-Túl drága és ritka az 1351 egér (SID kártya is kell hozzá)--> soha nem fog elterjedni

  Jött az ötlet az RS232 egérről, miután végigolvastam Levente microcontrolleres PS/2 illesztőjének a doksiját.
  Látható volt, hogy ezt izomból, aktív programozott külső elem nélkül a Plus/4 nem tudja megoldani. A mikrokontroller programozás túl bonyolult nekem, polcról leemelhető megoldást kerestem.

-Amikor elkezdtem foglalkozni a User portra dugható RS232-áramkörrel (ezeket C64-en nézetm meg), akkor jöttem rá, mennyire hasonló a két User port kiosztása/működése.
  Ebből lett az SVS Ultimate Map-ben a C64-Plus/4 User Port összehasonlító táblázat.  

-bszggg oldalán találtam rá az általa fejlesztett cuccra. Nagyon jó cucc, és elviekben működhet is (legalábbis azok alapján amit addig olvastam).
  Sajnos sem működő prototípusa, (mint kiderült) sem működő a rezidens drivere, sem dokumentációja nincs

-Emiatt döntöttem a Max232 áramkörök beszerzése mellett, plus user port csatik, kábelek, ház mellett.
  Ebből csináltam egy prototípust. Sajnos itt elakadtam, mert nem ment a rezidens driver

-Úgy döntöttem, legalább a hardver dokumentációját rendbe rakom. Ebből született az RS232 Mouse dokumentáció.
  Ez alapján bárki legyárthatja olcsón az illesztőt, sőt lehet, hogy többeknek van még régről ki nem dobott RS232 egere.

 

Kb itt tartok most.

 

Szerintem sem az indokaim, sem a felmerült problémák nem olyanok, ami miatt oltani kellene engem. Kifejezetten a scene számára szerettem valami könnyen és olcsón összedobható valamit csinálni.

Az, hogy nem vagyok jó programozó, soha, sehol nem tagadtam.

MMSZoli2 Creative Commons License 2020.04.12 0 0 9601

Letöltheted, próbáld ki.

Az, hogy a User portról olvasson, nem kell hogy lefagyást produkáljon, ha nincs rádugva semmi. Szerintem a $30. körül valamit csinálnia kellene, ami hiányzik a kódból és BRK-ra fut.
Ha ki NOP-olom, akkor meg teljesen befagy a gép, nem lép vissza RTS-el. 

 

Egyébként a korábbi felvetéseddel kapcsolatban: természetesen a kereten kell ezt is elvégezni, hogy ne akadjon össze pl az osztott képernyővel.

Előzmény: ergoGnomik (9599)
MMSZoli2 Creative Commons License 2020.04.12 0 0 9600

bszggg kódja (legalábbis az a residens driver ami neki most megvan) nem működik.

Elkezdtem visszafejteni, kommentelni, kijavítani,  lerövidíteni, hogy beleférjen a nulláslapba, de nem vagyok nagy kóder.

A residens nem akar működni, na. BRK-val mindig lefagy, valahol rossz helyre fut.

 

(Egyébként azon gondolkodtam, hogy vízszintesen az 0-159 pozíció is elegendő lenne az egérpozíció tárolására, multicolorban tökéletes, és hiresben sem kellene két bájt a pozíció tárolásához, csak fel kellene 2-vel szorozni a X-en tárolt értéket. Rajzoláshoz kellhetne az a precizitás hiresben, de ahhoz rajzolóprogram is kellene :-) ).

 

A PS/2 egerek több funkciót tudnak (pl görgő gomb lenyomottsága), és amennyire emlékszem, sokkal nagyobb adatsebességet használnak (már csak azért is, mert programozható a pontosságuk). Van RS232 serial mouse protokoljuk, de ehhez vissza kell őket kapcsolni ha jól emlékszem. Az adatcsomag első bájtja ne is egyezik meg az RS232-ével. 

ergoGnomik Creative Commons License 2020.04.12 0 0 9599

Nyilván nem lehetsz hibás az RS-232-es egerek árának emelkedéséért, de az érveid rosszul felsorakoztatásában igen. Viszont. bszggg-nek látszólag van működő megoldása az egér kezelésére. Legalábbis az oldalán olvasható leírás alapján. Azzal mi a baj? Működik, ha nem is elégít ki minden luxus igényt. Mondjuk forrásban, dokumentálva jobb lenne. Dehát a bináris forrás, a forrás meg dokumentáció, ahogy a nagyok mondják. :)

 

Ja, és tegnap kíváncsiságból keringtem egyet az eBay-n. Egy eladónál találtam PS/2 egeret és PS/2->RS-232 átalakítót szumma 10 Euróért. Csak gondolom a szállítás legalább még egyszer annyi lenne. Bár a mai világban hétezer plusz-mínusz pár száz Forint nem feltétlenül kezelhetetlen összeg, inkább az aránytalanság a bosszantó. :(

Előzmény: MMSZoli2 (9597)
MMSZoli2 Creative Commons License 2020.04.12 0 0 9598

TLC doksija: ez a TED protektor modernebb kiadása

 

Ha Valaki szeretné, megrendelheti a legutlós PCBkiadást

https://www.pcbway.com/project/shareproject/OpenC16JoyAdapter_V2.html

 

Levente munkáján alapul:
https://github.com/SukkoPera/OpenC16JoyAdapter

 

Előzmény: ergoGnomik (9591)
MMSZoli2 Creative Commons License 2020.04.11 0 0 9597

1351 egér: csak SID kártyám van.

 

Az 1351 egeret soha nem vettem, pont az ára miatt. Emiatt kezdtem el foglalkozni az RS232 egérrel, amit BSZGG oldalán találtam meg. 

Azt hiszem arról nem tehetek, hogy az elmúlt évek alatt az RS232 egerek is megdrágulak  

MMSZoli2 Creative Commons License 2020.04.11 0 0 9596

-Az 1351 joystick üzemmódja olyan, mintha egy joysticket mozgatnál, vagy még annál is rosszabb.

 Vagyis nem valódi opció, bár valóban működik Plus/4-en, de akkor már ott a joystick :-)

 

RS232 egér elve:

-Max232 TTL illesztő áramkör a User portra (készen vásárolható pár száz forintért)

 

-Az általam feltötlött doksi alapján Dupont kábelekkel összeközni a user porttal a Tx, Rx, GND és 5V
Rx --> M (not used by mouse)

Tx --> C
GND -->1, 12, A or N
VCC --> 2

 

-ACIA interruptos kód a 3 bájt beolvasásásra, amit az RS232 egér küld.

Folyamatosan olvasva a CPU teljesen leakad, lassú hozzá. 

 

-Az RS232 egér által küldött 3 byte, láthatóan kicsit összevissza vannak a pozicíók:

(1200 baud, 7 bit, 1 stop bit, no parity)

                D6 D5 D4 D3 D2 D1 D0

1st byte     1   LB  RB Y7 Y6 X7 X6

2nd byte    0   X5 X4 X3 X2  X1 X0

3rd byte     0   Y5 Y4 Y3 Y2  Y1 Y0

 

 

-Így néz ki C-ben a dekódolása az RS232 egér által küldött 3 byte "s" adatnak:

 

void DecodeMouse(unsigned char *s,int *button,int *x,int *y)

{ *button = 'n'; /* No button - should only happen on an error */

    if ((s[0] & 0x20) != 0)

      *button = 'l';

    else if ((s[0] & 0x10) != 0)

      *button = 'r';

      *x = (s[0] & 0x03) * 64 + (s[1] & 0x3F);

    if (*x > 127)

      *x = *x - 256; 

      *y = (s[0] & 0x0C) * 16 + (s[2] & 0x3F);

    if (*y > 127)

      *y = *y - 256;

  }

 

siz Creative Commons License 2020.04.11 0 0 9595

Igazad van, rosszul emlékeztem fejből. Elektronikai guru meg nem (sem) vagyok.

Előzmény: kisbetu (9594)
kisbetu Creative Commons License 2020.04.10 0 0 9594

Akkor csak a hajónapló kedvéért:

az LS244 nem műveleti erősítő, hanem buszmeghajtó áramkör.

Előzmény: siz (9592)
siz Creative Commons License 2020.04.10 0 0 9593

Elvileg a 2-es eszköz az RS232 lenne, de nem tudom, hogy mennyire van implementálva meg egyáltalán használta-e valaki, valaha. És egyébként mintha a KERNAL IRq handler is foglalkozna az ACIA megszakításokkal. De ezek csak halvány emlékek, régen piszkáltam már a KERNAL rutinokat.

Előzmény: ergoGnomik (9590)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!