901

(35 odpowiedzi, napisanych Fabryka - 8bit)

Dopsuję się do listy:

Zmontowane:

1. pancio.net x1
2. MGor x1
3. Sniegowy x2

Only PCB:

1. laborant x1
2. Yezy x1
3. Seban x1

902

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

DZIĘKI Wielkie! Kawał roboty... porządnie wykonanej roboty... lubię patrzeć na taką pracę... sądzę że aspekty historyczne są istotne... nikt z tego komercji nie uczyni... ale wartość edukacyjno/sentymentalna jest przeogromna. Jeszcze raz dziękuję za włożoną pracę, poświęcony czas i za zdecydowanie się na publikację tego wszystkiego.

Co do praw autorskich, sądzę że nikt o zdrowych zmysłach nie może się do tego przyczepić... jak pisałem wyżej więcej jest warta Twoja praca włożona w inż. wsteczną i uratowanie tego projektu przed zapomnieniem niż faktyczna komercyjna wartość tegoż rozszerzenia.

bardzo, ale to bardzo dziękuję!

903

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

Dzięki WIELKIE że chce Ci się tym walczyć! :) świetny pomysł ze złożeniem zdjęcia i projektu! :)

904

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

a sprawdzałeś/wymieniałeś bufor 4050 na którym zrobiony jest DAC dla luminancji? ew. również jego okolice, wygląda tak jak by brakowało Ci najstarszego bitu luminancji.

http://seban.pigwa.net/aa/130xe_03.gif

905

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

Hi!

I of course I have read Your first post... and I probably understand why You do not include those materials from mega-hz in Your post. I also, have some doubts about license, and maybe some copyrights, because this is mega-hz materials, and I don't asked him for permission, but those files is placed in public place (on his website) so I assumed this not violates his rights (I've included an information from where those files are taken, and the credits are also given), so I finally decided to post those materials from mega-hz web site here, for those reasons:

  • we talking about those topic here, so I think it's worth to include all materials here, so the other community members will not have to search for those on the internet.

  • for archiving of those materials (as a backup of materials from mega-hz website)

  • to keep all the information about this memory expansion in this topic, so the other members of forum can comment, or maybe add some more information. I think it is good idea to share all the knowledge and materials from the past, this is our hobby, this is also pure fun! And this is important for historical reasons and educational purposes.

... and of course I think even with those simple photos and included "Handbuch" it is possible to reverse-engineer and fully reconstruct the schematics... we have two sides of original PCB (those with (c) 1986 CompyShop), so we don't need to have "uncensored" version of mega-hz PCB. Ask Toriman, he probably confirm my words ;)

But I can't help at this moment :( Currently I have other duties to do... if nobody from our community can't help in near future... I will do it, but this can took some time.

906

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

Hi!

I think that work is already done by mega-hz... on his page is some files that contains photo of PCB with removed parts... there is also z "users manual" in German that describes this memory extension...  mega-hz also make a cloned version (probably for ABBUC)... the images of cloned PCB is also present on his website, but it's censored in some way... I think it is possible to make a small reverse engineering and retrieve the schematics. I don't know the legal status of this solution, but the files from mega-hz is publicly available, there is also the photos of ABBUC re-edition of this extension... 

The users manual in German language: Compy Shop 256KB Handbuch

Compy Shop 256KB memory upgrade original PCB (top & bottom side):

http://seban.pigwa.net/atari/CompyShop/CS256/CS256_PCB_top.jpg   http://seban.pigwa.net/atari/CompyShop/CS256/CS256_PCB_bot.jpg

The photos of cloned version for ABBUC, done by mega-hz:

http://seban.pigwa.net/atari/CompyShop/CS256/megahz/DSCF0640.JPG

http://seban.pigwa.net/atari/CompyShop/CS256/megahz/DSCF0641.JPG

http://seban.pigwa.net/atari/CompyShop/CS256/megahz/DSCF0642.JPG

http://seban.pigwa.net/atari/CompyShop/CS256/megahz/DSCF0643.JPG

and megz-hz version of new PCB (as I mentioned above, that is "censored" version:

http://seban.pigwa.net/atari/CompyShop/CS256/megahz/WF256BS.jpg http://seban.pigwa.net/atari/CompyShop/CS256/megahz/WF256LS.jpg

ps) all files are from mega-hz site. I only converted the "Handbuch" into "djvu" format (smaller size).

907

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

gwoli ścisłości... w trybie Hi-Res w przypadku 8-bit Atari litery zawsze mają kolor tła na którym się znajdują... w standardowych warunkach nie uzyskasz białych, czerwonych czy innych liter w kolorze odmiennym niż ma tło... masz wpływ tylko i wyłącznie na ich jasność. A że domyślnie tło masz "niebieskie" to i litery będą miały ten odcień jak zmienisz na zielone to i litery staną się zielone, tak ma być.

Jak już będziesz miał klawiaturę to spróbuj sobie napisać z poziomu BASIC-a np:

POKE 710,196

albo

SETCOLOR 2,12,4

standardowe "niebieskie" tło i litery z o jasności 10, przyjmują odcień tła (0x94):

http://seban.pigwa.net/aa/atari_0x94.png

po zmianie tła na odcień "zieleni" (0xC4) litetry o jasności 10, przyjmują również jego odcień:

http://seban.pigwa.net/aa/atari_0xC4.png

908

(2 odpowiedzi, napisanych Software, Gry - 8bit)

pewnie zupełnie to nie związane z tematem ale z tego co pamiętam to ten dźwięk dało się wyłączyć za pomocą klawisza "Z" bodajże, ale pewnie nie chodzi Ci o wyłączenie dźwięku tylko o podejrzenie czegoś we wcześniejszych źródłach, zatem moja "podpowiedź" zapewne jest zupełnie nieistotna/nietrafiona :) no ale może jednak komuś się przyda ;)

Jeżeli chodzi o wersję 4.14 może być ciężko, bo z tego co mi się wydaje, to wersja 4.19 to była udostępniona około 1999 roku... kawał czasu temu... nie wiem czy jeszcze wcześniejsze wersję strony Nicka Kennedy-ego się zachowały gdziekolwiek... jednak może ktoś ma jakieś archiwalne materiały w których może poszukać... sprawdzę w weekend swoje archiwum z tamtych lat... ale na wiele bym nie liczył ;/

tu jest wersja 4.13, ale niestety tylko w formie wynikowej (skompilowanej):  https://atrey.karlin.mff.cuni.cz/~pavel/atari/

krap napisał/a:

1. dlaczego przy kilkukronie wiekszym upakowaniu danych programy w turbo 2000 wczytywaly sie w zasadzie zawsze bez bledow, a wczytanie programu w normalu to byla czesto loteria,

Standardowy format zapisu danych używany w przypadku Atari to właściwie transmisja szeregowa plus modulacja częstotliwościowa (FSK)... taki format zapis danych jest bardzo wrażliwy na wszelakie odchyłki od prędkości narzuconej przez prędkość odbioru danych narzuconą przez Baud Rate Generator (BRG)... co prawda procedury obsługujące jak i format danych zostały niby przystosowane do kompensacji odchyłek, np. pomiar aktualnej prędkości danych na podstawie bajtów transmitowanych na początku każdego nagłówka rekordu, a potem korekcję prędkości BRG... do kompletu podział na krótkie rekordy danych... jednak jak pokazał praktyka przy mizernej jakości magnetofonów wszystkie te pomysły były niewystarczające... dodatkowo demodulator FSK zastosowany w przypadku standardowych magnetofonów Atari nie jest szczytem możliwości rozwiązań technicznych dostępnych w tamtym okresie (znowu cięcie kosztów) .... a to powoduje że niewielkie już zniekształcenie sygnału zapisanego na taśmie powoduje przekłamanie w odczycie transmitowanych danych.

Systemy turbo stosują nieco inną zasadę zapisu... nazwaną "modulacją szerokości impulsu" (ang. PWM - Pulse Width Modulation) i można się spierać że to koniec końców dość podobne do FSK, ale założenia teoretycznie i realizacja sprzętowa inna, np. w przypadku odczytu nie mamy tutaj sprzętowego dekodera który decyduje czy to do niego wchodzi na wejściu jest aktualnie transmitowaną "1" czy też "0". Wszystkie systemy turbo swoją konstrukcją sprowadzają się do jednego... do zrealizowania wzmacniacza o dużym wzmocnieniu który będzie mógł przetworzyć zapisany na taśmie sygnał postać zero-jedynkową... potem ten strumień danych jest już przetwarzany "programowo" ... decyzję o tym czy przychodzące impulsy traktować jakoś 0 czy 1 podejmuje kawałek programu mierząc czas trwania poszczególnych impulsów... tutaj oczywiście programista miał pełną dowolność co do wyboru metody kodowania poszczególnych stanów, a także co bardzo ważne... miał dużą swobodę co do wyboru tolerancji długości impulsów... z mojego doświadczenia z systemem Turbo 2000, wynika że autor rozwiązania przyjął bardzo dużą tolerancję systemu na odchyłki dotyczące długości czasu poszczególnych impulsów określających "0", "1" czy sygnał pilotujący.

Moje XC12 w pewnym okresie zaliczyło przysłowiową glebę, przez co skrzywieniu uległa ośka do której dociskana jest taśma, efekt był taki że następowała ogromna nieliniowość przesuwu taśmy, oczywiście zapis i odczyt w "standardzie" okazał się niemożliwy... natomiast odczyt/zapis w przypadku turbo 2000 nadal przebiegał bez problemów, nawet pomimo wyraźnie słyszalnego (i widocznego) nierównomiernego przesuwu taśmy.

Ponieważ na warsztacie mam teraz trochę magnetofonów od kolegi uicr0Bee i zacząłem walkę z innymi systemami turbo, to mogę powiedzieć że systemy turbo która zakładają mniejsze tolerancje i oczekują wyższej liniowości przesuwu taśmy, czy też oczekują wyższego pasma które można zapisać na taśmie dany magnetofon są również bardzo kapryśne i wczytanie części programów staje się nie lada wyczynem, a szczególnie tych które były zapisane dawno, dawno temu. Czy to Blizzard, czy to TurboROM nie wypadają już tak różowo jeżeli chodzi o stabilność pracy. Magnetofon musi być naprawdę w dobrym stanie aby te systemy działały sprawnie i bezproblemowo.

No i do tego wszystkiego błąd w OS-ROM, o którym napisano już wyżej. Czy zatem standard FSK jest gorszy od PWM? Trudno mi to oceniać, ale uważam że doskonałym przykładem że FSK może być równie skuteczne był system Turbo 2600. Ten system pokazuje że dało się skonstruować stabilnie działający demodulator FSK, oraz napisać całkiem poprawnie działające procedury odczytu i zapisu. System ten niestety nie przyjął się, a złożyło się pewnie na to kilka faktów... całe oprogramowanie siedziało pod OS-ROM, w już w tamtych czasach gdy promowano to rozwiązanie w "Radiokomputerze"... duża część oprogramowania ładowała się również w ten obszar, uniemożliwiając poprawną pracę tychże programów z systemem. Nie wiem czemu autorzy rozwiązania nie zaproponowali czegoś w rodzaju loaderów, czy mini Kasetowego Systemu Operacyjnego ładowanego na dół pamięci. Wydaje mi się ze autorzy systemu bardzo chcieli w tamtym czasie chronić swoją "własność intelektualną" i chronili dostęp do informacji o działaniu ich systemu i ograniczali wszelaką wiedze o nim, co przyczyniło się do jego upadku. Interfejs do tegoż systemu były ponoć dostępne w "składnicy harcerskiej" w Warszawie, jednak nie udało mi się nigdy takiego interface kupić. Używając magnetofonu szpulowego M2404S i zew. interfejsu udało mi się natomiast bez problemu uzyskiwać prędkości transmisji na poziomie 1300bd. (przy przesuwie taśmy 19,05cm/s)

https://img8.dmty.pl//uploads/201706/1497982364_5njkgm_600.jpg

no jak to co? siebie... ;-)

to no nie tak że "nikt"... ja jestem bardzo mało reprezentatywną "grupą" reprezentującą to zjawisko :) zapewne jestem jakimś wyjątkiem :P wiesz mogłem siedzieć wtedy długo pod kamieniem... albo "wyginałem" jak dinozaury ;-)

o nie wiedziałem :) dzięki za info! :) które wydanie? #4? jeżeli o to wydanie chodzi to pod emu mam z nim jakiś problem, ale sprawdzę na prawdziwym sprzęcie później :]

wyłączenie "SIO patch" pomoże tylko wtedy gdy ładujesz to np. z załączonego wyżej pliku ATR (dlatego pozwoliłem sobie go dołączyć), jeżeli wrzucisz (drag&drop, boot image, etc.) plik .XEX do emulatora zostanie on załadowany błyskawicznie, niezależenie od stanu "SIO Patach", przynajmniej u mnie się to tak zachowuje pod Altirra.

Jeszcze jedno mi się przypomniało... z realnych przykładów programów wykorzystujących przepisanie ROM->RAM oraz dokonanie w ROM modyfikacji w celu uzyskania dodatkowych efektów, można obejrzeć:

Abbuc Intro #20 a także: Abbuc Intro #21

Obie te produkcje podczas ładowania dokonują przepisania ROM->RAM, a następnie dokonują modyfikacji procedur SIO już w przepisanym z ROM obszarze RAM, tak aby możliwe było dalsze ładowanie programu i jednocześnie odtwarzanie muzyki, do kompletu mamy jakiś mini efekt podczas ładowania.

W przypadku uruchamiania pliku XEX z poziomu emulatora, trudno to zobaczyć ponieważ pliki .XEX ładują się pod emu błyskawicznie. Aby to zobaczyć trzeba by załadować to na prawdziwym Atari ze stacji dyskietek, albo jakiegoś interface obsługującego SIO, np. SIO2PC. Może też próbować uzyskać efekt powolnego ładowania na emulatorze, nagrywając te dwa pliki na dyskietkę z loaderem (np. chaos loaderem) a następnie wyłączyć wszystkie "przyspieszacze ładowania" w emulatorze.

Taki plik ATR do pobrania tutaj: ABBUC Intros #20 & #21

Nie miałem zbyt dużo czasu, ale udało mi się wyrwać chwilę z dostępnej puli aby przygotować przykład. Przykład składa się z dwóch kawałków, jeden to kod w asemblerze który potem jest wykorzystany w programie w Atari BASIC, kod w asemblerze wygląda tak:

; simple ROM-RAM routine
; 
; done by Seban @ 2019.05.05, Public Domain
;
; this code is relocatable, can be run from any address
; and it's ready for call from Atari Basic USR function

        opt     h-      ; disable any headers

ptr     equ $cb         ; zero page pointer
osrom   equ $c000       ; OS-ROM address
    
        org     $600    ; default adress of code
    
start   pla             ; call from BASIC, so remove one byte from stack (# of parameters)

        ldy #$00        ; set lo-byte of pointer to zero, also zero the Y reg.
        sty ptr+0
        lda >osrom      ; set hi-byte of pointer to OS-ROM location
        sta ptr+1
    
        lda #$01        ; set the bit #0 of portB to ensure that OS-ROM is enabled
        ora $d301
        sta $d301
    
        sei             ; disable IRQ
        inc $d40e       ; disable NMI
    
l0      lda (ptr),y     ; load ROM location into A reg.
        dec $d301       ; disable ROM
        sta (ptr),y     ; store A reg. into RAM under ROM
        inc $d301       ; enable ROM
        iny             ; next byte on page
        bne l0          ; loop until page end
    
        inc ptr+1       ; next page

        lda ptr+1       
        cmp #$d0        ; check if we are at $D000 
        bne l1          ; branch when page is not $D0xx
        lda #$d8        ; ok, we are at $D0xx we must move to $D8xx (skip the I/O area)
        sta ptr+1

l1      ora #$00        ; end of address space?
        bne l0          ; nope, do the loop!

        dec $d301       ; disable ROM
        lsr $d40e       ; enable NMI
        cli             ; enable IRQ
        rts             ; return to BASIC

do kompletu program w Atari BASIC wykorzystujący powyższą procedurę, ten przykład w BASIC, aby był czytelniejszy powyższą procedurę trzyma w liniach DATA, i po załadowaniu jej na 6 stronę, wywołuje ją funkcję X=USR(1536). Ale nic nie stoi na przeszkodzi aby powyższą procedurę umieścić w ciągu znakowym i wywołać ją bezpośrednio za pomocą X=USR(ADR(".....")), ale nie ma co ględzić oto prymitywny przykład w Atari BASIC:

10 GRAPHICS 0
11 ? "WAIT...":GOSUB 100
12 ? "MOVING...":X=USR(1536)
13 ? "ROM MOVED TO RAM."
14 ? :? "PRESS ANY KEY TO RUN EXAMPLE OF USE"
15 OPEN #1,4,0,"K:":GET #1,K:CLOSE #1
16 POKE 752,1:? CHR$(125):POKE 764,255
17 FOR I=0 TO 7:POKE 57344+I,PEEK(53770):NEXT I:IF PEEK(764)=255 THEN 17
18 FOR I=0 TO 7:POKE 57344+I,0:NEXT I
19 POKE 752,0:? CHR$(125);"DONE.":POKE 764,255
99 END 
100 REM - ROM-RAM MACHINE CODE DATA -
101 DATA 104,160,0,132,203,169,192,133,204,169,1,13,1,211,141,1
102 DATA 211,120,238,14,212,177,203,206,1,211,145,203,238,1,211,200
103 DATA 208,243,230,204,165,204,201,208,208,4,169,216,133,204,9,0
104 DATA 208,227,206,1,211,78,14,212,88,96
105 RESTORE 100:AD=1536:TRAP 107
106 READ B:POKE AD,B:AD=AD+1:GOTO 106
107 RETURN 

Program po uruchomieniu przepisuje ROM do RAM a potem w pętli modyfikuje wygląd znaku "space" (zapisuje je losowymi wartościami). Należy zauważyć że zawartość generatora jest modyfikowana w oryginalnym jego miejscu ($E000, 57344). Co pokazuje że operujemy już na pamięci RAM dostępnej w tym miejscu po uruchomieniu procedury w kodzie maszynowym.

Hej!

W wielkim skrócie... Atari OS-ROM znajduje się normalnie w lokacjach $C000-$CFFF oraz $D800-$FFFF, blok $D000-$D7FF zajmują rejestry sprzętowe oraz parę dodatkowych stron przeznaczonych dla różnych urządzeń. W przypadku Atari istnieje możliwość takiej zmiany konfiguracji MMU aby w obszarze $C000-$CFFF oraz $D800-$FFFF znalazła się pamięć RAM, a OS-ROM zostanie odłączony. Przełączenia dokonuje się za pomocą bitu #0 w PORTB. Jeżeli w tej pamięci RAM umieścisz kopię ROM, i wyłączysz ROM to będzie mógł operować na "kopii systemu operacyjnego" zawartej w RAM... przez co będziesz mógł modyfikować jego zawartość, w tym np. wygląd znaków.

Takie operacje przeprowadzały niektóre programy, szczególnie napisane w BASIC-u, aby zyskać trochę dodatkowej pamięci. Większość programów wymagających większej pamięci po prostu odłączało OS-ROM i korzystało z pamięci RAM, były też takie programy które kopiowały ROM do RAM, oraz wykonywały jego modyfikacje w celu uzyskania pewnych dodatkowych funkcjonalności.

917

(2 odpowiedzi, napisanych Kupię / Sprzedam / Zamienię Atari)

biorę! daj nr konta do wpłaty! czy możliwa wysyłka paczkomatem (inpost)?

918

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

to może zamiast walczyć z różnymi x08, spróbować tego co już Simius dawno zrobił: buforowanie PHI2

ale wydaje mi się że w przypadku uno-cart może występować problem o którym wspomniał wyżej sam Simius:

Simius napisał/a:

No, chyba że pojawi się urządzenie, które wystawia swoje dane bez oglądania się na fazę PHI2 i jest na tyle szybkie, że skraca czas trzymania danych z poprzedniego cyklu.

919

(421 odpowiedzi, napisanych Fabryka - 8bit)

Wielki szacunek dla wszystkich panowie! Czekam z niecierpliwością aż będę mógł podziwiać waszą pracę! :)

920

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

I added some English translation, I hope that helps also ;)

921

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

Hi!

I extracted the archive using lha (from "lhasa" package under Debian Linux), then I used a simple Turbo Basic program to load *.GR8 file:

10 GRAPHICS 24
11 POKE 709,0:POKE 710,15:POKE 712,15
12 OPEN #1,4,0,"D:MICPRINT.GR8"
13 BGET #1,DPEEK(88),7680
14 CLOSE #1
99 GOTO 99

then You have:

http://seban.pigwa.net/aa/microprint/micro_print.png

The "DOC" file inside the archive is plain TEXT file but the "end of line" markers is in 8-bit Atari format, so you can convert it to PC by changing every $9B to CR/LF bytes. The file is in polish language and contains some additional info for schematic (part types, some assembly instructions).

OK, here You have some kind of translation with some additional explanations:

                      Micro Print
                      -----------
                    
The archive contains:

 MICPRINT.GR8 - schematic of micro-print interface
 MICPRINT.DOC - this file
 MICPRINT.EPR - data file contains EPROM content
 
Bill of materials needed for build microprint interface:

1 pcs) 8048 or 8049 microcontroller
1 pcs) 2764 EPROM
1 pcs) 3.58MHz Quartz Crystal or Ceramic resonator
1 pcs) 2N2222 transistor
2 pcs) 33pF ceramic capacitors
1 pcs) 1uF/10V electrolytic capacitor
1 pcs) 22uF/10V electrolytic capacitor
1 pcs) 100nF ceramic capacitor (or 33nF)
3 pcs) sockets for IC's (optional)
1 pcs) Centronics AMPHENOL connector
1 pcs) Atari SIO plug
1 pcs) Housing
1 pcs) 10 kohm resistor

Some additional info to the interface schematic:

- in the centronics AMPHENOL connector connect pins from 19 to 30 and connect
  it to the GND. The connector have numbers of each pin, so it should not be
  a problem with location of correct pins.
 
The same is about the Atari SIO plug, this is standard serial peripheral Atari plug.
 
Atari Serial Plug - view from connection side:

    2             12
      o o o o o o
     o o o o o o o
    1             13
 
 - to the pins 2 & 3 of microcontroller (MCU) connect 33pF capacitors
 
 - to the pin 4 of MCU connect a 1uF capacitor
 
 - the to the wires that deliver power to the MCU (+5V, GND) add the power
   filtering capacitors: 22uF and 100nF (or 33nF). Remember that capacitors
   are not present on the schematic.
   
 - the Quartz Crystal must be 3.58MHz (ceramic resonator is recommended)
 
 - The 2764 EPROM must be programmed with "MICPRINT.EPR" file. The EPROM
   can be also 27128 or 27256 type, but the content must be properly prepared.
   That means that the contents of the file must be replicated the appropriate
   number of times, or additional and unused address lines must remain connected
   to GND.
    
 - in the original version pin #2 of MCU is connected through 10kohm resistor
   to the +5V power rail.
   
The whole thing was created with Tadeusz's help (thank you!)

                                                    Zenon/DIAL
                                                    5.08.2000

922

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

spoko luz! :) wiadomo jak jest :) ja czasami tak zamotam się z pisanym tekstem że trudno mnie zrozumieć :) tylko dlatego miałem wątpliwości czy aby wszystko jasno opisałem :)

923

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

uicr0Bee napisał/a:

Nie chodzi mi ani o bootowalny .atr ani .xex, tylko obraz carta .bin, aby go uruchomić z Uno-Carta.

no to procedura którą opisałem na końcu generuje taki czysty plik BIN/ROM który można odpalić z uno-cart.

uicr0Bee napisał/a:

Rozumiem że z QMEGa to jest taki "fizyczny", blokowy zrzut na dyskietkę i nie można tego zrobić od razu do pliku na filesystemie?

No niestety MLM wbudowany w QMEG nie ma w sobie DOS-a ani procedur które by obsługiwały fizycznie jakikolwiek zapis na filesystemie, ponieważ MLM jest bardzo mały (o ile pamiętam siedzi w miejscu gdzie normalnie siedzi SELF-TEST)... to zaimplementowano w nim tylko zapis/odczyt sektorów na dyskietkę, można wybrać adres startowy oraz ilość sektorów do zapisu. Dlatego właśnie wspominane "A000>1.40" zapisze dane z pamięci od adresu $A000 w postaci 64 sektorów począwszy od sektora nr. 1

Składania zapisu wygląda tak:

address>start_sector.#_of_sectors

Składnia polecenia odczytu wygląda tak:

address<start_sector.#_of_sectors

gdzie:

address -> adres bloku pamięci na którym operujemy(hex)
start_sector -> sektor początkowy (hex)
#_of_secotrs -> liczba sektorów do zapisu/odczytu (hex)

a co do SOPHIA to wygodzi na to że nie trafia ona z odczytem sprite-ów w cykle w którym te dane się pojawiają (są wystawiana przez ANTIC w konkretnym czasie i miejscu na magistrali danych). Widać UNO-Cart jakoś wpływa na magistralę i to powoduje takie efekty. Może też być tak że UNO Cart coś psuje na magistrali na tyle że GTIA sobie radzi, a logika zawarta w SOPHIA głupieje, ale to autor rozwiązania powinien się wypowiedzieć bo ja mogę nie mieć racji, ponieważ tylko zgaduje.

924

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

uicr0Bee napisał/a:

Przypomnijcie proszę jak z QMEGa zrobić dump carta na dyskietkę.

A to niestety zależy od typu cartridge, czy to jest 8K czy 16K, czy cart ma jakiś wewnętrzny przełączania banków czy też nie. W przypadku najprostszego 8K procedurę opisałem w wątku o "Test Cartridge by TOMS", wkleję to samo i tutaj:

  • przygotować stację dysków + dyskietkę lub sio2pc+AspetQT z umieszczoną dyskietką sformatowaną w formacie "SINGLE"

  • włożyć cart, uruchomić komputer, przejść do monitora QMEG / MLM (select + reset -> menu QMEG, potem klawisz RETURN, powinien się uruchomić MLM)

  • w konsoli MLM napisać: A000>1.40

  • zgrać dyskietkę do ATR, albo zgrać ATR-a z poziomu AspetQT.

  • wystawić ten ATR tutaj ;)

jeżeli chodzi o ADR, to dopiszę tutaj tylko jak dokonać "ekstrakcji" właściwego 8KB kawałka z pliku ATR. Najprostsze co można zrobić to pominąć pierwsze 16 bajtów nagłówka ATR, a potem zgrać następne 8192 bajty to pliku, pomijając całą resztę pliku ATR.

Ja osobiście używam do tego xasm-a ponieważ mam go zawsze pod ręką :)

cały plik dla XASM-a wygląda tak (dump.xsm)

    opt    h-

    org    $a000
    ins    "dump.atr",$10,$2000

mając w jednym katalogu XASM-a, ten plik oraz dump.atr możemy wywołać xasm w ten sposób:

xasm dump.xsm -o cart.bin

W przypadku chęci zrzucenia carta 16KB w MLM piszemy 8000>1.80 (zamiast A000>1.40), a plik dump.xsm zmieniamy aby wyglądał tak:

    opt    h-

    org    $8000
    ins    "dump.atr",$10,$4000

Robienie dump-ów cartów z przełączanymi bankami to już trochę bardziej skomplikowany proces (bo trzeba zgrywać poszczególne banki oddzielnie w inne obszary dyskietki, a potem napisać nieco bardziej skomplikowany skrypt to ekstrakcji zawartości tego z pliku "ATR", ale to już chyba temat na trochę dłuższy wywód :)

Zrobienie wersji XEX czy przygotowanie tego aby taki ATR był boot-owalny wymaga jeszcze trochę dodatkowego kodu i jeżeli kogoś to będzie interesować to opiszę dokładniej przy jakiejś okazji.

925

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

@Sikor... ale to wygląda tak jakby było już ustawione 4:3 (dobra proporcja piksela, oraz spora boczna ramka)