Autor Wątek: Kolejna poprawka Zynaps dla ULA+  (Przeczytany 21125 razy)

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #15 dnia: 2013.02.17, 16:56:27 »
Już samo Spectrum (i pozostałe konstrukcje z zeszłego wieku), jako realny sprzęt, w jakiejkolwiek konfiguracji są niszowymi platformami dla nielicznych, mało komu teraz chce się przewijać kasety czy szukać na aukcjach dyskietek i części, które uległy uszkodzeniu. Najczęściej używany jest do testowania napisanych przez siebie programów, aby zobaczyć, czy prawidłowo działają, a na codzień i tak klepie się na emulatorach, które dziś prawie w 100% zachowują się jak oryginał, a jednym kliknięciem w menu możesz dołożyć RAM czy skonfigurować któryś chip. Koderzy i muzycy potrzebują reala, jednak do dodania trainera, czy drobnych modyfikacji wystarczają emu. Gdyby premiera ULA+ miała miejsce około 1986 wraz z modelem 128k, to jej losy potoczyłyby się inaczej, byłaby dziś standardem, jak AY. Najbardziej drażni mnie fakt, że do dziś developerzy nie mogą dogadać się i stworzyć jednej konstrukcji (nawet, żeby to był emulator), która zawierałaby wszystko (obsługę myszy, ULA+, tryb 1x1 px, general sound i nowoczesny system operacyjny przede wszystkim), jak to jest np. z Amiga OS, który z architekturą Amigi opartej na CPU 680x0 wspólną ma tylko nazwę.
AY Music, ULA plus.

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #16 dnia: 2013.02.17, 19:12:49 »
Już samo Spectrum (i pozostałe konstrukcje z zeszłego wieku), jako realny sprzęt, w jakiejkolwiek konfiguracji są niszowymi platformami dla nielicznych,

Na prawdę uważasz te miliony sprzedanych egzemplarzy za niszę? Oczywiście - cały retro-computing to niszowa zabawa, ale ULA+ jest niszą w niszy.

Cytuj
mało komu teraz chce się przewijać kasety czy szukać na aukcjach dyskietek i części, które uległy uszkodzeniu.

Powiedziałbym, że bluźnisz, ale najwyraźniej po prostu nie rozumiesz o co w tym chodzi ;)

Cytuj
Najczęściej używany jest do testowania napisanych przez siebie programów, aby zobaczyć, czy prawidłowo działają,

Oczywiście, że łatwiej pisze się na mocniejszym sprzęcie i testuje na docelowym. Zawsze tak było - nawet w czasach pierwszej młodości Spectrum poważne firmy pisały gry na mocniejszych sprzętach. Ale pisanie, że "najczęściej" to generalizacja - nasz na jej poparcie jakieś źródła?

Cytuj
a na codzień i tak klepie się na emulatorach, które dziś prawie w 100% zachowują się jak oryginał,

Teoretycznie - w 100%. Praktycznie - przeczytaj wątek o Gm BiT 2013 (http://speccy.pl/forum/index.php/topic,791.0.html) - 100% teoretyczna zgodność to nie wszystko, bo zawsze pozostają te elementy, których się po prostu fizycznie nie da wyemulować (jak 50Hz telewizor jako wyjście z fizycznego sprzętu).

Cytuj
a jednym kliknięciem w menu możesz dołożyć RAM czy skonfigurować któryś chip. Koderzy i muzycy potrzebują reala, jednak do dodania trainera, czy drobnych modyfikacji wystarczają emu.

Tak. Ale założenie, że piszę dla ludzi używających emulatorów jest bez sensu - sam używam czegoś, co ludzie nazywają emulatorem, ale dla mnie to fizyczny sprzęt podłączony do fizycznego telewizora i na tym ma działać mój kod. I jeśli na emulatorze wychodzą z niego jakieś glitche, to szczerze mówiąc mało mnie to obchodzi. I cała scena retro podchodzi do tego tak samo - emulator ułatwia pewne rzeczy, ale docelową platformą jest fizyczny sprzęt. I nic tego nie zmieni.

Cytuj
Gdyby premiera ULA+ miała miejsce około 1986 wraz z modelem 128k, to jej losy potoczyłyby się inaczej, byłaby dziś standardem, jak AY.

No weź mnie nie rozśmieszaj... Na prawdę uważasz, że komputer z głównym chipem o cztery razy większej strukturze niż oryginalna ULA miałby się szanse sprzedawać w '86 roku? ULA+ jest "patchem" na istniejącą konstrukcję, który w '86 roku po prostu nie dałby się zrealizować ze sensowne pieniądze. A jeśli już ktoś chciałby dodawać extra tryby do Spectrum, to prawie na pewno poszedłby w stronę tego, co zostało zrobione w Samie a nie w lepienie dodatkowych kolorów do istniejącego trybu graficznego.

Cytuj
Najbardziej drażni mnie fakt, że do dziś developerzy nie mogą dogadać się i stworzyć jednej konstrukcji (nawet, żeby to był emulator), która zawierałaby wszystko (obsługę myszy, ULA+, tryb 1x1 px, general sound i nowoczesny system operacyjny przede wszystkim), jak to jest np. z Amiga OS, który z architekturą Amigi opartej na CPU 680x0 wspólną ma tylko nazwę.

Ale co cię drażni? To, że mamy kilkadziesiąt różnych klonów/wariantów Spectrum do których możemy podłączyć - fizycznie - setki jeśli nie tysiące różnych urządzeń realizujących różne - często sprzeczne ze sobą - funkcje? No to powtórzę - nie rozumiesz samego założenia retro-sceny :) A sugestia, że ktoś miałby tworzyć jakąś wspólną konstrukcję i realizować ją w emulatorze tylko to potwierdza ;)

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #17 dnia: 2013.02.17, 19:48:38 »
Nie kłóćmy się tutaj, jeśli jesteś ortodoksem, to pracuj na ZX Spectrum 16k, microdrive, drukarce ZX Printer i telewizorze CRT, a PC sprzedaj.
Jesteśmy tu, żeby sobie pomagać, a nie tworzyć podziały na zwolenników i przeciwników takiego, czy innego urządzenia.
Moje pytania na początku tematu dotyczyły skomplikowanych loaderów, przy których liczyłem na pomoc kogoś potrafiącego dobrze zdisassemblować kod. To forum nie jest miejscem do kłótni o istniejący już i zaakceptowany zarówno przez programistów emulatorów i użytkowników sprzęt (choć są tacy, którzy nawet nie tolerują AY). Co innego, gdybyśmy tu dyskutowali nad nowym projektem, a temat, przypomnę dotyczy gry Zynaps i jej przeróbki na ULA+.
AY Music, ULA plus.

Tygrys

  • Administrator
  • *****
  • Wiadomości: 4540
  • Miejsce pobytu:
    Warszawa
  • mistrz ceremonii
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #18 dnia: 2013.02.17, 20:52:43 »
Panowie,
Jeżeli chcecie wymieniać nadal zdanie na temat nie związanym z tym wątkiem, to załóżcie nowy, dajcie odetchnąć innym, mniej zainteresowanym Waszą wymianą zdań na tematy offtopiczne.

Co to konwersji .z80 (choć to było kilka .sna) na .tap to kiedyś to przerabiałem z sukcesem. Jeżeli znajdę więcej czasu, opiszę co i jak, choć Phonex opisał częściowe rozwiązanie.
« Ostatnia zmiana: 2013.02.17, 21:52:44 wysłana przez Tygrys »

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #19 dnia: 2013.02.17, 22:44:25 »
Przede wszystkim nie zrobiłem tego, co powinienem zrobić na początku i tu przyznaję się do winy za pewne zamieszanie. Nie sprawdziłem, czy crack z dźwiekiem na AY chodzi na modelu 48k, dlatego zrobiłem snapshot samej gry bez intro, aby przerobić ją na tzx/tap i docelowo dorobić prostsze intro, a raczej menu w Basic.
Uruchomiłem tą grę na 48k, intro działa, ładuje screen, ale gra nie startuje, bo korzysta z banków RAM 1 i RAM 2
Zależałoby mi na wywaleniu z tego pliku oryginalnego screenu, który przy ładowaniu w emulatorze ukazuje się przez chwilę (nie zrobili pauzy), a przy ładowaniu z taśmy/wav/mp3 na real hardware bedzie całkiem niepożądany.
Ten crack to również tzx zrobiony ze snapshotu za pomocą Z802TZX.
Gdybyś potrafił wyekstrahować tylko istotne pliki z tego tzx (czyli gra + muzyka) i znał adresy pod które je ładować i finalne uruchomienie, to byłoby super.
INC D : EX AF,AF' znalazłem pod 36674, ale nie ma po nim DEC D, tylko ADD A,C. W obszarze Basic nic takiego nie znalazł.
A tymczasem ja zajmę się poprawką kolorów screenu.
« Ostatnia zmiana: 2013.02.17, 23:20:26 wysłana przez Abrimaal »
AY Music, ULA plus.

Phonex

  • *****
  • Wiadomości: 1261
  • Miejsce pobytu:
    Warszawa
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #20 dnia: 2013.02.18, 11:31:37 »
INC D : EX AF,AF' znalazłem pod 36674, ale nie ma po nim DEC D, tylko ADD A,C. W obszarze Basic nic takiego nie znalazł.
A tymczasem ja zajmę się poprawką kolorów screenu.

Sprawności tropiciela nie przyznaję (na razie).
INC D/EX AF, AF'/DEC D jest pod 24588. Potem jest przerzucana pod 48987. <- Tu możesz wstawić pułapkę i za każdym razem jak będzie wywołanie zapisać parametry - długość w DE i numer banku. IX jest 65535, bo ładuje w dół. Parametry są ładowane z tablicy wskazywanej też przez IX. DE np. ładuje z (IX+1), (IX+2), itd.
Trochę to skomplikowane, a ja chwilowo nie mam czasu.
"Obrazek" jest połączony i ma chyba 12k, jest ładowany a potem przerzucany na ekran (LD DE, 16384 - łatwo znaleźć  :) ), więc trzeba by pozmieniać też w tej tablicy, albo napisać loader od nowa.

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #21 dnia: 2013.02.18, 14:12:34 »
To w takim razie z pewnością przerzucane jest coś na obszar Basic, bo ja szukałem na uruchomionej grze, kiedy chodziło intro.
"potem przerzucane pod 48987" tzn. kiedy, po starcie programu w Basic, a przed ładowaniem intro?
Czyli procedura turbo load znajdować się będzie pod 48987, teraz wystarczy znaleźć parametry ładowania dla poszczególnych bloków.

Jeśli chodzi o obrazek, to po poprawce dalej są dysproporcje kolorów pomiędzy ZX Paintbrush a Spin 0.7
Nie wiadomo, który wyświetla prawidłowo. Podobał mi się taki, jak zrobiłem na Paintbrush, a Spin znów dodaje za dużo niebieskiego. W ostateczności mogę zrobić statek czysto czerwony, bez dodatku blue, wtedy nie będzie różnicy,
bo jak zauważyłem dotyczy ona pierwszego poziomu jasności blue, który w Spin jest o wiele jaśniejszy.
Sprawdzę jeszcze później w innym emu (WJSpeccy) jak wyświetla te kolory. Wczoraj już nie zdążyłem.

AY Music, ULA plus.

RafalM

  • *****
  • Wiadomości: 1133
  • Miejsce pobytu:
    Sulejówek
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #22 dnia: 2013.02.18, 15:19:43 »
Cytuj
Nie kłóćmy się tutaj, jeśli jesteś ortodoksem, to pracuj na ZX Spectrum 16k, microdrive, drukarce ZX Printer i telewizorze CRT, a PC sprzedaj.
Jesteśmy tu, żeby sobie pomagać, a nie tworzyć podziały na zwolenników i przeciwników takiego, czy innego urządzenia.

Wtrące jeszcze swoje dwa grosze ;)

ULA+ jest tematem dość kontrowersyjnym. Na WOS ludzie się już brali za łby z tego powodu, leciały bany...

BO dotykamy tutaj chyba bardzo istotnego podziału wśród miłosników retrosprzętu - na "klasykowców" i "postępowców", tych którzy chcą uprawiać swoje hobby na oryginalnych maszynach i tych którzy chieliby w nich ciągle coś zmieniać, dodawać, ulepszać.

Tak naprawdę na świecie miejsce jest i dla takich i dla takich. Niestety niektórzy ludzie chcieliby by wszyscy byli tacy sami ja oni, lubili i robili to samo co oni. Spotka się więc zwolennik ULA+ ćwierkający jaka to super rzecz z klasykowcem który mu powie że to nie wygląda jak Spectrum i to już wcale nie jest Spectrum tylko jakiś mutant no i kłótnia gotowa ;)

Najgorzej chyba poszło we wspomnianym już tutaj środowisku Amigi. Tam po upadku firmy Commodore powstały nowe Amigi albo może "Amigi" o możliwościach współczesnych komputerów PC i tak naprawdę będące ich przeróbką. Powstały dwa konkurencyjne rozwiązania - Morphos i AmigaOs. Czytając amigowe fora ma się wrażenie że zwolennicy tych obu rozwiązań się autentycznie i szczerze nienawidzą, niczym kibice Legii i Widzewa. A jedni i drudzy nie lubią i lekceważą zwolenników klasycznych Amig których mają za "dinozaurów". A klasykowcy z kolei nie lubią zwolenników nowych Amig i koło się zamyka. Po prostu masakra.

Nie tędy droga. Trzeba robić swoje,  pozwolić innym robić swoje i jak napisał Abrimaal sobie pomagać, a nie tworzyć podziały na zwolenników i przeciwników takiego, czy innego urządzenia :)

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #23 dnia: 2013.02.18, 15:43:07 »
@RafalM Ja to wszystko rozumiem i zasadniczo zgadzam się z tym co napisałeś. Ale to nie zmienia faktu, że uważam, że ULA+ jest rozwiązaniem chybionym z samego założenia a pisanie czegokolwiek wyłącznie na emulatory jest bez sensu - o czym sam Abrimaal się przekonuje zderzając się z niezgodnym ze sobą implementacjami ULA+ ;)

I to tyle ode mnie - postaram się więcej w dyskusje o ULA+ nie wtrącać :)

Phonex

  • *****
  • Wiadomości: 1261
  • Miejsce pobytu:
    Warszawa
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #24 dnia: 2013.02.18, 17:32:23 »
To w takim razie z pewnością przerzucane jest coś na obszar Basic, bo ja szukałem na uruchomionej grze, kiedy chodziło intro.
"potem przerzucane pod 48987" tzn. kiedy, po starcie programu w Basic, a przed ładowaniem intro?
Czyli procedura turbo load znajdować się będzie pod 48987, teraz wystarczy znaleźć parametry ładowania dla poszczególnych bloków.

Jeśli chodzi o obrazek, to po poprawce dalej są dysproporcje kolorów pomiędzy ZX Paintbrush a Spin 0.7
Nie wiadomo, który wyświetla prawidłowo. Podobał mi się taki, jak zrobiłem na Paintbrush, a Spin znów dodaje za dużo niebieskiego. W ostateczności mogę zrobić statek czysto czerwony, bez dodatku blue, wtedy nie będzie różnicy,
bo jak zauważyłem dotyczy ona pierwszego poziomu jasności blue, który w Spin jest o wiele jaśniejszy.
Sprawdzę jeszcze później w innym emu (WJSpeccy) jak wyświetla te kolory. Wczoraj już nie zdążyłem.

Cały czas piszę oczywiście o programie "128k". Procedura przerzucana jest natychmiast z obszaru zmiennych - pod 48987. W zasadzie tylko banki trzeba odczytać, bo długości znamy z bloków.
A Basic jest zamazywany tym co jest połączone z obrazkiem w pierwszym bloku Turbo Data.

Obrazek znacznie lepszy!
Ten ze Spin prawie idealny. Jeszcze z powrotem daj żółty, np. taki jak w napisie ZYNAPS i będzie super.

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #25 dnia: 2013.02.18, 19:37:11 »
Moim zdaniem statek cały w odcieniach czerwieni/magenta jest ciekawszy, przypomina gradienty z Amigi, choć tam ta część też jest żółta, to w "moim" obrazku brak żółtego w statku rekompensuje logo w odcieniach tego koloru.

Jeśli chodzi o banki, to sprawdziłem debuggerem na uruchomionej grze, że używane są RAM 0, 1 i 2. Pozostałe są puste. Pozostaje jeszcze dowiedzieć się które bloki do których banków są ładowane, a może się zdarzyć, że gra po uruchomieniu też coś przerzuca.
AY Music, ULA plus.

RafalM

  • *****
  • Wiadomości: 1133
  • Miejsce pobytu:
    Sulejówek
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #26 dnia: 2013.02.18, 20:55:17 »
Jakie banki? Zynaps jest przecież grą pod 48 kB  :o

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #27 dnia: 2013.02.18, 22:02:01 »
To jest crack z podmienionym dźwiękiem. Zamiast beepera gra AY. Muzyka to znany z gry Warhawk na Atari i C64 utwór i efekty też na AY i to one mieszczą się w bankach.
AY Music, ULA plus.

Phonex

  • *****
  • Wiadomości: 1261
  • Miejsce pobytu:
    Warszawa
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #28 dnia: 2013.02.18, 22:02:50 »
Jakie banki? Zynaps jest przecież grą pod 48 kB  :o

Może autor loadera nie wiedział?  ;)

LD A, (IX+0) ; 48409
AND A ; 48412
JR Z, 48495 ; 48413
LD H, (IX+1) ; 48415
LD L, 255 ; 48418
LD E, (IX+2) ; 48420
LD D, (IX+3) ; 48423
LD BC, 32765 ; 48426
OUT (C), A ; 48429

Najwyraźniej przełącza banki...

Moim zdaniem statek cały w odcieniach czerwieni/magenta jest ciekawszy, przypomina gradienty z Amigi, choć tam ta część też jest żółta, to w "moim" obrazku brak żółtego w statku rekompensuje logo w odcieniach tego koloru.

No dobrze. Też ładnie.  :)
« Ostatnia zmiana: 2013.02.18, 22:07:25 wysłana przez Phonex »

Abrimaal

  • *****
  • Wiadomości: 965
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Kolejna poprawka Zynaps dla ULA+
« Odpowiedź #29 dnia: 2013.08.27, 01:20:24 »
Teoretycznie skończony. Grać można.
Plik TAP może nie chodzić na niektórych emulatorach, dlatego że loader gry dla 128k jest w turbo.
Dlatego zależało mi na wyłuskaniu samego kodu gry ze snapshotu, aby niepotrzebnie nie ładował oryginalnego screenu.
Chciałem też usunąć crack intro i dać prostsze .
Może kiedyś coś się jeszcze dopracuje w samym menu, czy zrobi oddzielne gry dla 48 i 128.

 
AY Music, ULA plus.