1,001

(42 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

Proszę bardzo, bez zerowania 18,19,20... i większości dirty hacków... 7 ramek...

10 PAUSE %0:PRV=TIME
11 GRAPHICS 56:POKE 559,%0:SCR=DPEEK(88)
12 POKE SCR,255
13 MOVE SCR,SCR+1,7679
14 PUT #6;125
15 DLT=TIME-PRV
16 ? DLT;" FRAMES",DLT*(1/50);" SEC."

ps) jeżeli PRV=TIME wstawisz po GR.24, to będziesz miał wynik 6 ramek. pokonaliśmy Action! :)

10 GRAPHICS 24:POKE 559,%0:PAUSE %0:PRV=TIME:SCR=DPEEK(88)
11 POKE SCR,255:MOVE SCR,SCR+1,7679
12 CLS #6
13 LN=PEEK(54283):DLT=TIME-PRV
14 ? DLT;" FRAMES",LN*%2;" LINES"

dokładniej 6 ramek i ~90 linii rastra.

http://seban.pigwa.net/drop/tbxl_fill_03.png

1,002

(11 odpowiedzi, napisanych Sprzęt - 8bit)

sebastin napisał/a:

Tylko na czarnym ekranie widać pasy z zakłócenia jakieś. Ale to pewnie inny temat.

To już kwestia konstrukcji stopnia wyjściowego video, niestety jest totalnie spartolony... widać wszelakie "szarpnięcia" prądu przy aktywności RAM (a więc głównie cykle refresh i DMA generowane przez ANTIC). Tutaj może pomóc trochę układ typu Ultra/Super Video, lub kompletna rekonstrukcja stopnia wyjściowego (chociażby ta w wersja GTIA Fixer od simiusa. Lub układ UAV od Bryan-a (z tym że nie wiem czy jest on obecnie do kupienia)

sebastin napisał/a:

Któs pisał o zasilaczy o mniejszej mocy (prądzie poniżej 1A) ze GTIA lepie reaguje.

Nie bardzo ma jak "lepiej" reagować bo sygnał luminancji wychodzi z GTIA w formie cyfrowej... potem efekt psuje prymitywny 4-bit video DAC zrobiony na 4050 i 4 rezystorach. Co do sygnału chrominancji to tam amplituda nie ma zbytnio znaczenia (i tak jest sporo za wysoka, poza dopuszczalna normą) ... większość monitorów sobie z tym radzi... a na pewno 99,9% TV/Monitorów CRT radzi sobie z tym doskonale. To że takie LG tego nie przewidziało... no cóż... albo to błąd konstrukcyjny, albo problem stopnia wejściowego w LG, albo wręcz błąd w firmware monitora, który odpowiada za AGC dla wejścia chrominancji.

1,003

(42 odpowiedzi, napisanych Programowanie - 8 bit)

no dobra... to mamy stabilne 7:

0 PAUSE %0:DPOKE 19,%0:GRAPHICS 56:POKE 559,%0
2 POKE 48975,255:-MOVE 41297,41296,7679
3 PUT #6;125:? TIME

1,004

(42 odpowiedzi, napisanych Programowanie - 8 bit)

no czyta, czyta... (tu moja wina jest niezaprzeczalna, chociaż było napisane "nie trzeba przedstawiać", co nie oznacza iż było to zabronione :P) ale praca zespołowa też jest fajna :) skoro kod się zrobił open-source to teraz społeczność ma szansę wycisnąć z niego ostatnie soki :)

1,005

(42 odpowiedzi, napisanych Programowanie - 8 bit)

przyznaje się bez bicia że bardzo pobieżnie przeczytałem post cobol80, dopiero potem doczytałem że mamy nie publikować kodu ... (no i potem doczytałem że wyniki mają być z TIME a nie TIME$, stąd moje brednio-wywody o zbyt małej precyzyjności TIME$) ... no ale wtedy to mleko się rozlało już... poza tym nie traktuję tego jako rywalizację czy konkurs, ale jako fajną zabawę :)

1,006

(42 odpowiedzi, napisanych Programowanie - 8 bit)

Pin napisał/a:

Na przekształceniach do hexów tracisz cenny czas :)

ale chociaż widzę co się dzieje w kodzie... nawet z hex-ami...

0 DPOKE 19,%0:GRAPHICS 56:POKE 559,%0
1 POKE $BF4F,$FF:-MOVE $A151,$A150,$1DFF
2 PUT #6;125:? TIME

wynik: 8 (sporadycznie trafia się 7)

1,007

(42 odpowiedzi, napisanych Programowanie - 8 bit)

@pin... ale użwyając gr. 56 ... nie czyścisz pamięci ekranu również przez całą operacją (są tam losowe śmieci) ... :D pominąłeś również zerowanie komórki 18, przez co po chwili pracy OS-a miałem wynik 65540 :P jeżeli takie chwyty są akceptowalne to ja proponuję:

0 DPOKE 19,%0:GRAPHICS 56:POKE 559,%0
1 POKE $BF4F,$FF:-MOVE $A151,$A150,$1DFF
2 POKE $BF4F,%0:-MOVE $A151,$A150,$1DFF:? TIME

wynik: 9

:P

1,008

(42 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

10 TIME$= "000000"
11 GRAPHICS 24:SCR=DPEEK(88)
12 POKE SCR+7679,255
13 -MOVE SCR+1,SCR,7679
15 POKE SCR+7679,0
16 -MOVE SCR+1,SCR,7679
17 ? TIME$

http://seban.pigwa.net/drop/tbxl_fill_01.png

coś wygrałem? ;)

ps1) TIME$ jest zbyt mało precyzyjne, trzeba raczej użyć TIME, a jeżeli tak to:

10 DPOKE 18,0:POKE 20,0
11 GRAPHICS 24:SCR=DPEEK(88)
12 POKE SCR+7679,255
13 -MOVE SCR+1,SCR,7679
14 ? #6;CHR$(125)
15 ? TIME

http://seban.pigwa.net/drop/tbxl_fill_02.png

ps3) TIME$ pokazuje czas w sekundach, TIME którego użyłem (ponieważ time$ był zbyt mało precyzyjny) liczy z rozdzielczością (1/50) sek. (dla PAL), więc wynik który uzyskałem 12 jest równy = 12*(1/50)= 0.24 sek.

ps2) tak na serio, nie chcę żadnych nagród rzeczowych :) możecie mnie nie uwzględniać w konkursie ;)

Na zakończenie obecnej serii cartów pozostał do zaprezentowania cart z dość nietypowym jak dla mnie Turbo, pierwszy raz coś takiego na oczy zobaczyłem właśnie dzięki uicr0bee. Nigdy wcześniej nie widziałem takiego rozwiązania wśród polskich systemów Turbo. O czym mówię? ;) Dziś na warsztacie cartridge dla systemu "Turbo Star Plus":

http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr1.png  http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr2.png

http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr3.png  http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr4.png

http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr5.png  http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/scr/TurboStarPlus_scr6.png

Samo oprogramowanie przypomina trochę niemiecki system Turbo6000. Nie chcę tutaj rzucać żadnych pochopnych wniosków, bo prawdę mówiąc nie porównywałem kodu, jednak podobieństwo obu systemów sugeruje iż bazą do powstania "Turbo Star Plus" mógłbyś niemiecki Turbo6000, zatem nie przedłużając już i bez dalszych zbędnych dywagacji, dla zainteresowanych:

1) zawartość pamięci EPROM: Turbo_Star_Plus.bin.7z

Turbo_Star_Plus.bin:

MD5   : 84f910e353317068c01851f7eec2e7f3
SHA256: 46e44dfa5e8a492afbc2c9770e0f47da4900ca5d2281e90a4e2defc828087636

2) wersja XEX dająca się uruchomić spod DOS-a lub dowolnego loadera plików binarnych: Turbo_Star_Plus.xex.zip

3)  Schemat: wektor (PDF), raster color (PNG), raster grayscale (PNG).

Jeżeli chodzi i schemat to nie bardzo jest co komentować. Typowy 4KB cart mapujący się w przestrzeni $A000-$BFFF, jednak z uwagi że pamięć EPROM to 4KB kostka i nie podłączono linii A12, w obszarze $A000-$BFFF widoczne są dwie kopie przedstawiające zawartość pamięci EPROM ($A000-$AFFF oraz $B000-$BFFF).

Cart może być jednokrotnie odłączony na drodze programowej, ponowne jego załączenie nastąpi po ponownym włączeniu zasilania, ew. po przyciśnięciu przycisku opisanego jako "RESET" na obudowie carta... jednak ze względu na sposób połączenie przerzutników naciśnięcie przycisku RESET gdy cart jest włączony spowoduje jego wyłączenie, ponowne wciśnięcie włączenie, etc. A więc przycisk powinien być chyba opisany "toggle" ;-)

Cart miał zmasakrowany ów przełącznik, a także przerzutnik U3A nie posiadał układu resetującego go po włączeniu zasilania... zatem cartridge startował losowo. Dodałem układ reset (dorysowałem go również na schemacie), wymieniłem mikro-switch i cart zaczął działać prawidłowo :)

Co do samego oprogramowania... wyboru pozycji z menu dokonuje się klawiszem SELECT, wybraną pozycję uruchamia się klawiszem START... klawiszem OPTION dokonujemy włączenia/wyłączenia BASIC-a... (gdy tło zmienia kolor na jaśniejszy oznacza to wyłączenie BASIC-a). Generalnie aby uniknąć problemów polecam włączenie komputera z włączonym OPTION (odłączony BASIC).

System turbo jest o tyle nietypowy że do odczytu danych wykorzystuje linię PROCEED w gnieździe SIO (podłączoną do PIA), dokładnie tak samo zrealizowano to w przypadku systemu Turbo6000. Nie miałem niestety ani czasu ani możliwości aby na chwilę obecną przeanalizować format zapisu danych. Nie wiem czy jest zgodny z Turbo6000. Jeżeli ktoś będzie miał chęci i chwilę wolnego czasu, to przypominam że kasety zawierające nagrania z tego systemu (przynajmniej tak były opisane) można pobrać tutaj: Turbo Star Tapes.

Na koniec prezentacja samego cartridge:

http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/photos/TurboStarPlus_cart.jpg

PCB, góra:
http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/photos/TurboStarPlus_pcb_top.jpg

PCB spód:
http://seban.pigwa.net/uicr0bee/carts/TurboStarPlus/photos/TurboStarPlus_pcb_bot.jpg

ps) gdyby ktoś dysponował jakimiś bardziej rozbudowanymi materiałami na temat tego systemu turbo, tzn. może jakieś kasety z programami zapisanymi w tym systemie, może jakaś instrukcja, etc. nawet wspomnienia są cenne, jeżeli ktoś cokolwiek pamięta i zechce się swoimi wspomnieniami, myślami czy przebłyskami z przeszłości dotyczącymi tegoż systemu podzielić, byłbym bardzo wdzięczny za udostępnienie.

Na chwilę obecną dużo więcej o tym systemie nie powiem, ale po obrobieniu się z bieżących spraw nawarstwiających się w kolejce, być może wrócę do analizy tego systemu turbo i struktury jego nagrań i formatu danych, ale być może ktoś z ciekawości przyjrzy się temu nieco szybciej niż ja... (krótki, FUJI?) i jeżeli okazało by się że ten system nie ma zgodnego formatu danych z Turbo6000 to może niezastąpiony baktraaa przeanalizuje to i doda obsługę tego formatu do turgena? ;) Jeżeli nikt nie uczyni tego wcześniej przyjrzę się kodowi umieszczonemu w carcie, ale przyznam że wstępne oglądanie tego tylko mnie zniechęciło, straszny chaos tam panuje :P

Jak już wspominałem to był ostatni z cartów czekających w kolejce z obecnej serii, teraz zacznie się pojawiać w tym wątku to co znalazłem w magnetofonach dostarczonych mi przez uicr0bee. Nie wiem czy to będzie dla forumowiczów interesujące, bo to straszny bałagan i dłubanina ;) Ale udostępnię to oczywiście w ramach chęci zachowanie tego kawałka historii chociażby w sieci.

Hej!

z tego schematu:

http://seban.pigwa.net/drop/blz_zenon_sch.png

i tego rysunku:

http://seban.pigwa.net/drop/blz_zenon_xc12.png

(rysunki są z tego artykułu z Atariki: Turbo Blizzard)

... wynika że "D" łączysz tam gdzie szedł przewód był podłączony przewód idący od do pinu #3 we wtyczce SIO (DATA_IN), natomiast ten odlutowany przewód podłączasz do punktu "E" interface Blizzard.

"F" łączyć do kabla który idzie z pinu #5 we wtyczce SIO (DATA_OUT). Po prostu przylutowujesz go równolegle do tego przewodu. Ten sygnał normalnie służy do zapisy danych, ale w przypadku Blizzard przy odczycie służy do przełączenia interface w tryb pracy turbo.

1,011

(11 odpowiedzi, napisanych Sprzęt - 8bit)

update: sprawdziłem... ponieważ ta dioda w kierunku zaporowym mi nie pasowała i nie dawało mi to spokoju, a zarazem to właściwie nijak to nie powinno działać, więc jedyne co mi przychodziło do głowy dlaczego to działa, to pojemność złącza diody... a co za tym idzie znaczenie tak naprawdę wtedy miałaby reaktancja tej pojemności przy częstotliwości sygnału chrominancji... pomierzyłem i sprawdziłem, okazało się to słuszną dedukcją, a więc całe "rozwiązanie problemu" sprowadza się do włączenia w szereg z sygnałem chrominancji niewielkiej pojemności ... u mnie w przypadku niemodyfikowanego 130XE sprawdziło się idealnie 22pF. Użyłem zwykłego ceramicznego kondensatora.

                           22pF
[m][chroma]-----------------||--------------[chroma][a]
[o][   gnd]---------------------------------[gnd   ][t]
[n][  luma]---------------------------------[luma  ][r]

Przy pojemności <10pF pojawiał się spory szum, natomiast przy pojemności 68pF automatyka LG znowu szalała.

http://seban.pigwa.net/drop/M228WA/M228WA_22pF_scr1.jpg

http://seban.pigwa.net/drop/M228WA/M228WA_22pF_scr2.jpg

EDIT: Przy podłączeniu 130XE z UltraVideo (bez diody, zostawiłem tam 75 ohm) obraz był jeszcze bardziej ostry i mniej "zakłócony" przez "śmieci" na zasilaniu w torze video.

1,012

(11 odpowiedzi, napisanych Sprzęt - 8bit)

w chwili testu miałem "pod ręką" miniaturową BAT165, ale każda "shotka" powinna działać, na sch napisałem przykładowe typy, tzn:

  • BAT45

  • BAT46

  • BAT85

  • 1N5711

  • 1N6263

1N4148 nie jest niestety diodą shottky-ego. Ale połączone w szereg, z tym że w kierunku przewodzenia też dają radę.

Problemem dla "automatyki" w LG jest zbyt wysoki poziom sygnału chrominancji, normalnie powinno się wziąć jakiś video op-amp i zrobić aktywny układ nazwijmy to "tłumika". Tyle że bez małego PCB i paru elementów pasywnych się nie obejdzie już. Można to też skleić na 2-3 tranzystorach ale nie wiem czy to warte zachodu jest.

Co do efektu... w przypadku mojego LG trudno mówić o jakiejś kolosalnej różnicy w jakości pomiędzy ultra-video a samą diodą w torze chrominancji, ale ten mój LG za dużo "poprawia", tzn. odszumia, wyostrza, etc. Co gorsza w tym monitorze co mam tego się nie da wyłączyć ;/

jakby ktoś nie chciał ruszać atari, wystarczy wykonać sobie kabel s-video opisany w tym wątku. Wiem że to prymitywne i niewłaściwe rozwiązanie, ale w tym wypadku działa.

UPDATE: najprostsze rozwiązanie problemu w tym poście.

1,014

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Hej!

Jeżeli chcesz na szybko doprowadzić ten monitor do działania, bez przerabiania Atari weź jakąś mało-sygnałową diodę schottky-ego i włącz ją w kierunku zaporowym w sygnał chrominancji, tzn. chodzi o coś takiego:

           BAT45/BAT46/BAT85/1N5711/1N6263
[m][chroma]----------|>|-----------------[chroma][a]
[o]                                              [t]
[n][gnd   ]------------------------------[gnd   ][a]
[i]                                              [r]
[t][luma  ]------------------------------[luma  ][i]

Oryginalnie flashjazzcat zastosował w swoim ultra-video zwykłą krzemową 1N4002, ale ja miałem z nią bardzo nieostry obraz. Z kolei 1N4148 w takiej konfiguracji bardzo, ale to bardzo szumiała. Od biedy jak nie masz pod ręką żadnej  diody shottky-ego, a jakiegoś czerwonego LED-a możesz z nim spróbować.

Można też próbować z 4 szt. 1N4148 włączonymi w kierunku przewodzenia, tzn. tak:

[m][chroma]-----|<|---|<|---|<|---|<|-------[chroma][a]
[o][   gnd]---------------------------------[gnd   ][t]
[n][  luma]---------------------------------[luma  ][r]

powyższe rozwiązania sprawdziłem na 130XE (płyta z pamięciami 8x1bit) takiej bez modyfikacji s-video... z moim LG (pomijając "inteligencję" scalera) uzyskałem stabilny obraz na moim wiekowym LG228WA z tego wątku.

1,015

(14 odpowiedzi, napisanych Sprzęt - 8bit)

mono napisał/a:

@Seban: O, i to jest ciekawostka! Dobry pomysł z publikacją projektów. Nieśmiało zagadnąłbym też o SlightSID-a - jest szansa na finisz i wdrożenie do produkcji?

Zaczyna się dziać na poważnie, chciałem robić ręcznie trochę sztuk, ale jeżeli wszystko pójdzie dobrze... to może uda się zrobić montaż trochę bardziej profesjonalny. Pozostaje jeszcze kwestia obudów i ich wycięcia, ale liczę na pomoc znajomego, może w końcu uda się to ogarnąć na jakimś cnc.

toriman1 napisał/a:

@Seban - zrób wykopki - pliiiizzzzzz :)

Zrobię, zrobię... na pewno! Tylko muszę tylko ogarnąć do końca partię magnetów od uicr0bee i zacznę to przenosić wszystko do postaci cyfrowej :)

1,016

(14 odpowiedzi, napisanych Sprzęt - 8bit)

mono napisał/a:

Ciekawi mnie też czy ktokolwiek (niekoniecznie w/w świętości) do czegoś to wykorzystał.

Przypomniało mi się... w zamierzchłych czasach robiłem takie interface równoległy do Atari oparty po VIA (6522) służący do transmisji danych pomiędzy JIL i PC. On wykorzystywał ten pin SO, tzn. sprzętowy hand-shake z VIA i aby osiągnąć szybszy "hand-shake" a co za tym idzie większe transfery wykorzystałem linię SO.

Jak zakończę obecną kolejkę zadań, to poszukam tej atarki i udostępnię to... zresztą mam zamiar wszystkie te moje stare i niepublikowane projekty jakoś odgrzebać i upublicznić... może się komuś coś przyda, a nawet jak nie to niech zostanie w sieci zamiast zgnić gdzieś u mnie w czeluściach chaosu :P

1,017

(14 odpowiedzi, napisanych Sprzęt - 8bit)

http://www.6502.org/tutorials/vflag.html <--- sekcja 3 i 3.1

i do kompletu:

http://www.righto.com/2013/01/a-small-p … ained.html
http://www.righto.com/2012/12/the-6502- … ained.html

Właściwie dla czystej formalności dorzucam do wątku kolejny (i zarazem ostatni) cart związany z systemem Turbo ROM, tym razem jest to cartridge nazwany "Turbo ROM plus (3)", a prezentuje się tak:

http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/scr/TurboROM_plus3_scr1.png  http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/scr/TurboROM_plus3_scr2.png

http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/scr/TurboROM_plus3_scr3.png  http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/scr/TurboROM_plus3_scr4.png

Sam cartridge był już prezentowany w tym wątku: Turbo ROM plus, jednak "zdumpowanie" drugiego egzemplarza pozwoliło na weryfikację poprawności pierwszego "zrzutu", zatem:

1) zawartość pamięci EPROM: TurboROM_plus(3).bin.7z

TurboROM_plus(3).bin:

MD5   : 8693c3308e4815082792816c25e8907c
SHA256: fbae42a945962dc6cc8c47b8f9fac3f29b6814590da44093f94a6b56cd82b80e

2) wersja XEX dająca się uruchomić spod DOS-a lub dowolnego loadera plików binarnych: TurboROM_plus(3).xex.zip

3)  Schemat: wektor (PDF), raster color (PNG), raster grayscale (PNG).

Jak widać cartridge jest wykonany identycznie jak wcześniejszy egzemplarz "Turbo ROM Cartridge", tak samo niedbale i z taką samą dawką ignorancji... jego stabilność pozostawiała wiele do życzenia, co prawda nie był tak problematyczny jak wcześniejszy egzemplarz, jednak montującemu PCB nie chciało się przylutować nawet jednej ze stron układu scalonego 7400... bo po co skoro i tak dwie bramki od układu zabezpieczenia "anty-pirackiego" nie są de-facto podłączone potem. Tym razem zamiast 7438 włożono zwykłe 7400, co jest nawet logiczne jeżeli weźmiemy pod uwagę fakt nie skorzystania z "zabezpieczenia". Brak kondensatorów blokujących powodował że raz na jakiś czas zawartość pamięci przy odczycie ulegała przekłamaniu. Po dołożeniu dwóch kondensatorów filtrujących zasilanie, problem niestabilności zniknął.

Jak tak patrzę na te rozwiązania napotkane przeze mnie i podpisane "Turbo ROM", to zaczynam mieć jakieś uprzedzenia, być może miałem pecha, ale zawsze trafiał mi się jakiś przypadek sprawiający problemy, w dodatku albo zalany a to żywicą epoksydową, a to stearyną, a to zapaćkany klejem DISTAL. I każdy cart na który trafiłem zawsze sprawiał jakieś problemy :) ale dość już tego narzekania, bo na zakończenie jak zwykle bohater "odcinka", czyli...

Cartridge Turbo ROM Plus (3):
http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/photos/TurboROM_plus3_cart.jpg

PCB, góra:
http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/photos/TurboROM_plus3_pcb_top.jpg

PCB, dół:
http://seban.pigwa.net/uicr0bee/carts/TurboROM_plus3/photos/TurboROM_plus3_pcb_bot.jpg

Hej!

No co ty... jakie rachunki... te części to z mojej kopalni "rupieci"... nie mają wartości materialnej, nawet nie da się i teraz kupić :) a ich zastosowanie przynosi radochę że można przywrócić do życia wiekowy już sprzęt! :)

Po dłuższej przerwie wracam do opisywania cartów z kolekcji uicr0bee. Dziś na warsztacie pewien mały upierdliwiec, który spędzał mi sen z oczu parę dni... niby zwykły cart... a jednak uszkodzony w tak specyficzny sposób że już myślałem że cart jest stracony... ale o tym za chwilę, zacznijmy od prezentacji tegoż wynalazku... a będzie to cart dla systemu...

TurboROM Cartridge:

http://seban.pigwa.net/uicr0bee/carts/TurboROM/scr/TurboROM_scr1.png http://seban.pigwa.net/uicr0bee/carts/TurboROM/scr/TurboROM_scr2.png

http://seban.pigwa.net/uicr0bee/carts/TurboROM/scr/TurboROM_scr3.png

1) Zawartość pamięci EPROM: turbo_rom.bin.7z

turbo_rom.bin

MD5   : 80b7f663b648f71faa9704a21fcc5c22
SHA256: 7e5a98b1f52ce1c80370e3c2d9c485c433703e5f36e9391f2905f309b3c70257

2) wersja XEX dająca się uruchomić spod DOS-a lub dowolnego loadera plików binarnych: TurboROM.xex.zip

3)  Schemat: wektor (PDF), raster color (PNG), raster grayscale (PNG).

Jest to standardowy 8KB cart mapujący się w obszar $A000-$BFFF. Można go odłączyć na drodze programowej poprzez dowolne odwołanie do obszaru $D500-$D5FF. Przerzutnik RS realizujący odłączenie cartridge zrealizowano również w standardowy sposób, czyli na dwóch bramkach NAND. Na PCB carta jest co prawda obecny układ "anty-piracki" znany z cartów blizzard, jednak w tym cartridge nie został on połączony, tzn. ścieżka prowadząca w wyjścia bramki U2C do linii D6 została przecięta. Płytka jest typowym projektem z tamtych czasów, nie jest dedykowane rozwiązanie pod "Turbo ROM", a jedynie adaptacja istniejącego rozwiązania. Jakość wykonanie wnętrza tego carta budzi wiele zastrzeżeń, widać było robotę "byle szybciej", "byle taniej", oszczędzono nawet na kondensatorach filtrujących.

Ten akurat egzemplarz strasznie mnie "umęczył", ponieważ po uruchomieniu albo się ciągle resetował, albo uruchamiał się raz na 10 razy... na początku nie wiedziałem od czego to zależy... okazało się że po pewnym czasie że zawartość pamięci EPROM zmienia się w zależności od temperatury :) im cieplej tym lepiej, gdy EPROM osiągnął temp. ~25°C udawało się odczytać poprawnie większą część pamięci, jednak niektóre bajty nadal odczytywały się losowo... analizując kod i wnikając w przyczynę resetów cart-a odkryłem że kod tego carta-a przed startem właściwego oprogramowania liczy swoje CRC (suma wszystkich bajtów modulo 256) i gdy CRC się nie zgadza, skacze pod wektor RESET. To dawało szansę określić czy odczytana zawartość pamięci jest poprawna, jednak nie było tak różowo jak mi się wydawało. Przekłamania odczytów były na tyle spore że często CRC się zgadzało mimo tego że odczytana zawartość była niepoprawna. Skracając już tą nieco przydługą historię... w carcie była oryginalnie pamięć 8KB od National Semiconductor, dokładniej NMC27C64Q... w tym wypadku postanowiłem ją wlutować i spróbować dokonać odczytu w warunkach o wiele mniej "dynamicznych", tzn. odczyt zew. programatorem ze zmniejszoną prędkością odczytu... okazało się że tym sposobem pamięć udało się poprawnie odczytać. Do carta powędrowała nowa kostka EPROM od AMD (AM27C128 ... okazało się że wszystkie 27C64 które mam odmówiły już współpracy z racji wieku). Dodałem trochę kondensatorów, wcześniej już walcząc z cartem wymieniłem wszystkie elementy pasywne, poprawiłem układ resetu.

Na koniec wziąłem na warsztat to wylutowaną NMC27C64Q... ciekawy byłem że jej wredne i niestabilne zachowanie jest spowodowane tym że to już końcówka żywotności ładunków w celach matrycy EPROM, więc pamięć skasowałem... zaprogramowałem ponownie... okazało się że przy szybkim odczycie losowe bajty są nadal przekłamywane... zmieniłem również sposób aktywacji pamięci z ~OE/~CE na taki w którym ~CE cały czas było przypięte do GND a ~OE aktywowane sygnałem ~S5... jednak kość zaczęła w takiej konfiguracji przekłamywać jeszcze więcej bajtów... czas jej życia definitywnie zakończył się... cieszę się jednak że udało mi się odczytać jej zawartość, to była chyba ostatnia chwila aby to uczynić. Mam 99% pewność iż udało mi się to poprawnie zgrać (CRC się zgadza, chociaż pewności to 100% nie daje, więc wykonałem ponad 256 odczytów każdej strony pamięci i wybierałem te które dawały w większości wypadków identyczny odczyt... pamięć przy okazji podgrzewałem i mroziłem aby zobaczyć jak to wpływa na odczyty ;P Masę czasu przy tym zmarnowałem, ale chyba było warto :P)

I jak zwykle na koniec prezentacja samego carta:
http://seban.pigwa.net/uicr0bee/carts/TurboROM/photos/TurboROM_cart.jpg

PCB, góra:
http://seban.pigwa.net/uicr0bee/carts/TurboROM/photos/TurboROM_pcb_top.jpg

PCB, spód:
http://seban.pigwa.net/uicr0bee/carts/TurboROM/photos/TurboROM_pcb_bot.jpg

Hej!

W widzisz, to mi chodziło o tą bardziej rozbudowaną wersję od Simius-a, PCB które dostałem wyglądało tak:

http://seban.pigwa.net/drop/gitafix2/gtiafix2a.jpg

http://seban.pigwa.net/drop/gitafix2/gtiafix2b.jpg

W tej wersji Simius zbudował na nowo cały tor luminancji, jak to wygląda? Proszę oto zrzuty z frame-grabbera (niezbyt profesjonalnego więc swojego szumu on nieco dokłada, zatem bierz na to poprawkę)

130XE, płyta z pamięciami 8x1bit stan fabryczny:
http://seban.pigwa.net/drop/gitafix2/130xe_factory.png

130XE, płyta z uszkodzonym GTIA, dołożona powyższa wersja GTIA fixera by Simius:
http://seban.pigwa.net/drop/gitafix2/130xe_gtiafix2.png

co prawda GTIA fix nie rozwiązuje problemów z chrominancją i należy się tym zająć oddzielnie, jednak przyznasz że różnica jest kolosalna? ;)

Jedyne o czym należy pamiętać mając na pokładzie GTIAFIX to to iż przesuwa on działa GTIA o 1 cykl koloru, w demach w których użyto zmiany trybów GTIA w środku linii może pojawić się problem, gdy zmiany są wykonywane dość "ciasno", np. część Our 5oft/Bloody Coders do dema Unity...

fabryczne 130XE:
http://seban.pigwa.net/drop/gitafix2/bc_unity_part_(130XE_factory).png

i po zastosowaniu GTIA fix:
http://seban.pigwa.net/drop/gitafix2/bc_unity_part_(130XE_gtiafix2).png

Jak najbardziej do zrobienia w przyszłości :) Tylko nie pamiętam prawdę mówiąc carta z pierwszego obrazka z wątku który podlinkowałeś... albo skleroza (co jest bardzo możliwe) albo nie było go tu na forum? Jest gdzieś w sieci?

ale którą wersję gtia fixer masz? tą do której simius sprzedawał PCB? Bo ta wersja była jak pisałem rozbudowana w stosunku do tego co było załączone w wątku czy Atariki.

Jeżeli chodzi o diodę to i ten wątek to ja tylko mówię o tym wszystkim pod kątem tego nieszczęsnego LG... na innych monitorach 1N4002 pogarsza mi tylko obraz :)

EDIT: Przyjrzałem się dokładniej przeróbce Ultra Video XE i sposobowi włączenia owej diody... jak się to porówna ze zdjęciami to okazuje się owa dioda jest włączona zaporowo... to działa właściwie przez przypadek i chyba tylko dzięki upływnościom i wewnętrznej pojemności pasożytniczej diody. Do tej pory sądziłem że dioda jest włączona w szereg w kierunku przewodzenia i to powoduje spadek amplitudy sygnału chrominancji o wartość spadku na złączu P-N, jednak w chwili gdy włączona jest ona zaporowo to wychodzi na to że na drugim końcu pojawia się szczątkowy sygnał chrominancji ... z którym o dziwo LG sobie lepiej radzi niż z przesterowanym sygnałem. Mam pewien pomysł co do innego i prymitywnego rozwiązania zbyt wysokiej amplitudy sygnału chrominancji ... ja sprawdzę i zadziała nie omieszkam opisać.

A tymczasem obrazy pokazujące jaki szum wprowadza u mnie 1N4002, tym razem nie zdjęcia a zrzuty z taniego grabera easy-cap opartego o chip STK1160:

gdy obecny jest 75R obraz wygląda tak:
http://seban.pigwa.net/drop/M228WA/ultra_video_easycap_75R.png

gdy włożę 1N4002 obraz wygląda tak:
http://seban.pigwa.net/drop/M228WA/ultra_video_easycap_1N4002.png

Problem z szumem polega na "szczątkowości" sygnału chrominancji po zastosowaniu 1N4002 w kierunku zaporowym, automatyka zawarta w LG o wiele lepiej sobie radzi z niskim poziomem sygnału chrominancji i jak widać było na zdjęciach zamieszczonych powyżej, tak dramatycznie to na LG nie wygląda... jednak chińska taniość w postaci EASYCAP i STK1160 w nim zawartego nie radzi sobie z tak niskim poziomem chrominancji i wyciąga równie dużo szumu co użytecznego sygnału niosącego informację o kolorze... co skurtkuje obrazem jak na załączonym obrazku... zatem nie tędy droga... z 1N4148 jest jeszcze gorzej, z "szotką" niewiele się u mnie zmienia. To trzeba rozwiązać inaczej... bo to od początku zła droga jest ;)

uicr0Bee napisał/a:

W tym, który masz teraz u siebie i już opisałeś też widzę jest:
http://www.atari.org.pl/forum/viewtopic … 17#p246617
:-D

no tak... nie ma to jak moja spostrzegawczość ;) Ale poza tym jeszcze gdzieś to nazwisko mi przemknęło... tylko pytanie gdzie? :)

Hej!

Jestem chętny na 3 szt. PCB. Zatem:

1. xtrem007 +1
2. pancio.net +1
3. seban +3

A dyskusję dot. PCB faktycznie proponuję przenieść do wydzielonego wątku, będzie mniej zamieszania w tym wątku.

Byłoby super gdyby moderator/admin mógł przenieść poszczególne posty. Wtedy drugi/przeniesiony wątek tworzyłby logiczną całość. Tutaj oczywiście pozostawić odnośnik jak najbardziej, bo temat pokrewny! :)