w jaki sposób przerobić źródło obrazka wygenerowane przez g2f aby po skompilowaniu nie było konfliktów z runtime tbxl i można było użyć brun aby wyjść z programu wczytując obrazek (czyli skompilowany plik xex)? czy da się,po prostu, pozmieniać niekóre adresy w źródle aby to zadziałało. wiem, pytanie z serii lamerskich:) dzięki
Pierwsze pytanie, to gdzie dane są ładowane. Po kompilacji i przy użyciu Runtime dane programu TBXL znajdują się w pamięci gdzie indziej. Być może rozwiązaniem będzie obniżenie memtop i tam wrzucić dane. Ostatnią kwestią jest irracjonalność użycia błędnie zaimplementowanych instrukcji TBXL. Bodajże chodzi o bload, brun i DEC, choć DEC został poprawiony przez Jacka Żuka i wypuszczony w postaci zmodyfikowanej wersji bibliotek runtime2.exe. bload/brun w nielegalny sposób odwołuje się do dosa, czego skutkiem jest to, że program pod jednym dosem działa a pod innym nie. Dla wnikliwych - nie chodzi wyłącznie o Sparta DOS X, bo problem dotyczy sporej części "zwykłych" dosów ;)-
Problem bload dotyczy np. wznowionej wersji gry Kolony 2106 - wszystkie bload zpaczowałem do postaci XIO ... jak wygrzebię owego moda, to po testach przeprowadzonych przez autora / wydawcę wersja ta zostanie ububliczniona. Ma to szczególny sens dla posiadaczy dysków twardych, oraz SDX i bodaj MyDOS'a
wiesz, jak odpale Atari, ktoremu aktualnie zmieniam vbxe to mysle, ze spokojnie znajde dosa, pod ktorym to nie zadziala :P. I nie bedzie to SDX. Poza tym - czy to wina SDX, czy bledu w TBXL i co najlepiej w takim razie zrobic? - napisac program tak, by komus nie poszlo, czy napisac dobrze i wiedziec, ze zadziala w kazdych warunkach i na dowolnym dosie? ;)-
:)) Program napisany jest dobrze. Użyto instrukcji BLOAD, która nie jest zakazana. Całość działa z "dedykowanym" DOS-em. Z innymi popularnymi (oprócz Sparty) DOS-ami też. Pewnie znajdą się wyjątki, jak SDX, ale nikt nie obiecywał, że gra uruchomi się na każdym systemie, jaki wymyślono i... słowa dotrzymał ;) Jak ktoś chce grać na kopii zamiast na oryginale to... ma problemy :P
--- PS. Pin, ja oczywiście tylko tak się droczę. Mam nadzieję, że rozumiesz :))
Ja bym to ujął inaczej: to nie działa żle. To ponoć nie działa poprawnie z SDX. Osobiście nie sprawdzałem, tzn. wiem, że K2106 nie działa z SDX, ale nie wiedziałem, co jest tego przyczyną. Pin odkrył, że to przez BLOAD. Wierzę :). K2106 nie było kompilowane.
Kolony jest w zasadzie niekompilowalne, bo skoki wykonywane sa czesciowo pod zmienne, z czego pamietam :). Oryginal drogi Panie posiadam, gdyz sobie go kupilem za srebrnikow pare. Gram na modzonej kopii, gdyz ta:
Dziala z SDX/HDD, dzieki temu laduje sie ekstremalnie szybko, gra w trybie raportow dziala w trybie 80 VBXE :)- dzieki temu, jako caloksztalt prezentuje sie jak dla mnie atrakcyjniej i nie musze uzywac powolnego SIO do jakichkolwiek operacji I/O, nie potrzebuje tez PC ze SIO2PC, ani nie musze odpalac tego z dyskietek, ktore takze posiadam :) To moje prywatne zdanie i fakt, ze dla przykladu ktos uzywa magnetofonu szanuje, bo niby dlaczego by tego nie uzywac - diabel w tym raczej nie siedzi. Zastanawiam sie jednak czasami nad wstecznictwem, ktore bez zadnego uzasadnienie usiluje sie promowac wszelkimi dostepnymi srodkami. No nic - jak dla mnie rozmowa w temacie skonczona;- a moda gry pozostawie w takim przypadku dla siebie i niech kazdy "napisze se" sam ;)- bo przeciez wszystkim dziala :P
Mono - co do BLOAD / BRUN to z czego mi wiadomo ich niedzialanie pod SDX wywolane jest faktem skoku na "pale" w procedury Atari_dos'a. To samo w zasadzie mozna zreplikowac przy pomocy XIO, ktore dziala wszedzie - a z powodu ktorego tyle jest tu gadania :)- W sumie, ze tak powiem finalnie i tak nic straconego :) :P
tak - i niewiedziec dlaczego linie rozdzielajace poszczegolne czesci raportow rysowane sa na pelne 80 kolumn. Dlaczego - nie wiem, ale pewnie rysowane sa na petli zabezpieczonej bledem :) - no i rysuje 80 znakow w linii :)
A to już fachowa robota autora (a może Urborga?). Rozwiązane jest to bardziej finezyjnie, niż czekanie na błąd. Przy rysowaniu znaku "linii" sprawdzana jest komórka 85, która (wraz z 86) przechowuje położenie kursora i gdy osiągnie 0, to znaczy, że kursor jest już w następnej linii i rysowanie jest przerywane. Wygląda na to, że już dawno temu przewidziano, że będzie coś takiego, jak - brrr - VBXE ;)
dlaczego BRRR :) - karty nie zakładałem dla FX, tylko dla zajebiście wyraźnego obrazu po składowych RGB :) - jak się coś robi na Atarce nie na grzybie - to ma to zasadnicze znaczenie :) :P