W A++ można sobie wybrać rodzaj emulowanego procesora
A ma 65c816?
Bo ja tak się patrze i nie widze, chyba, że patrze na zły emulator.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Tenebra na Atari ST/STE Wersja gry na duże atari.
Wyniki FujiCup 2023 Wyniki konkursu FujiCup na najlepszą grę dla 8-bit Atari w 2023 roku zostały ogłoszone!
TONY na małe Atari Nowa gra na małe Atari, w Hiresie, produkcja Rafała Dudka (brat XXL-a), Popmilo i Caruso.
Cosmic Hero 2 Bohater ratujący Ziemię w kryzysowej sytuacji powraca po 30 latach.
VI. Basque Tournament of Atari 2600 Kolejna relacja, wśród otrzymywanych od naszego przyjaciela Egoitza z Kraju Basków.
atari.area forum » Posty przez laoo/ng
W A++ można sobie wybrać rodzaj emulowanego procesora
A ma 65c816?
Bo ja tak się patrze i nie widze, chyba, że patrze na zły emulator.
Gdzie można przeczytać, że tak jest naprawdę, czyli, że EXTSEL\ odłącza wewnętrzny dekoder, ale tylko dla określonych adresów ("odcietych" adresow z szyn RAM/ROM)? Czy to nie jest bardziej skomplikowane, niż brak takiego ograniczenia? I czy ktoś to sprawdzał?
Ja znalazłem tylko trzy sensowne źródła: mapping..., myatari i confidential specification ;)
Póki nie wypowie się ktoś, kto wie co się tam w środku dzieje, to możemy tylko fantazjować.
PBI ma dwie linie odcinające. MPD\ odcina ROM spod $D800 - $DFFF (Math Pach Disable), ale to nie wystarcza, bo wtedy pojawia się tam RAM i do podcięcia RAMu jest EXTSEL\ (EXTernal SELect) (This input is used to disable the CPU decoder for the duration of the current bus cycle.). Dodatkowe linie są w gdzieździe Cartridge'a (S4 do obszaru $8000 - $9FFF i S5 do $A000 - $BFFF), a w ECI linia D1xx do strony $D1. Ale nie wiem, czy one są niezbędne, czy dla ułatwienia (żeby mniej hardwaru dekodującego dany obszar pakować do urządzeń). Zadałem sobie tylko pytanie: Jeżeli urządzenie nie ma dostępu do całego obszaru adresowego, to po co mu wszystkie 16 linii adresowych? Jak ma się wszystkie linie, to można zareagować na dostęp do dowolnego obszaru i jeżeli EXTSEL\ może odciąć dowolny obszar to w dowolnym miejscu można oszukać CPU. W tym miejscu wyobraziłem sobie np. sprzętowy debuger do atarki, który w dowolnym momencie może podłożyć CPU kod zrzucającu zawartość RAMu, albo w extremalnym przypadku zastępować cały RAM odpowienim obrazem, a w przypadku ANTICa - tylko wyobraźnia by nas ograniczała co można mu podłożyć (ot może karte telewizyjną podkładającą mu obraz w TIPie :P)
Poczytałem ostatnio o interfejsie PBI (albo CART z ECI) i dopiero dowiedziałem się jak to ogólnie działa (wcześniej to była czarna magia). Mam w związku z tym potencjalnie głupie pytanie, więc bardzo nie krzyczcie i zważcie, że jestem programistą, a lutownicą się parzę ;)
Z tego co przeczytałem, to do PBI na linie adresowe (A0-A15) leci adres aktualnie czytanej/zapisywanej przez CPU komórki. Jeżeli w odpowienim momencie da się "low" na linię EXTSEL\, to zamiast z/do RAMu do/z CPU poleci/przyleci wartość z/do lini danych (D0-D7). Czyli teoretycznie przy odpowienio sprytnym urządzeniu można robić z CPU co się chce. A pytanie dotyczy ANTICA. Czy można wykryć, że aktualny cykl odczytu z pamięci jest przez niego kradziony (ANTIC używa linii RDY\, na PBI też ona jest, ale w docach jest napisane, że tylko do zapisu)?
A drugie pytanie: w momencie odczytu pamięci przez ANTICA co jest na liniach A0-A15 i D0-D7 PBI, bo to chyba byłoby zbyt pięknie, gdyby dało się też podkładać jakieś dane ANTICowi :)
A SAVE nie miało jakiegoś parametru, który sprawiał, że przery były krótkie? (tak mi się coś majaczy)
nosty: nie interesuje Cię ta folia zabezpieczająca? ;)
Bo mads jest fajny i każdy powinien go używać :P
W źródłach Numena jest FOXowe "inflate" (w skrocie: depakuje zipy). Możliwe, że nawet nie jest trudno tego użyć.
hehe. te turbotari jest nie do pobicia :D
ale kto mówi o pisaniu parsera? Mały chciał tylko wyciąć fragment napisu, a do parsowania tekstów to temu dalego ;)
a uruchom to na atari. powiedz co sie pokazalo.
coś takiego
Synchronizacja nie była zrywana.
coverem czego jest muzyczka z Self-Testu? :)
A dokładniej pierwsza promenada. Reszta to wariacje tego motywu
Tak dzieje się dlatego, że używasz wyrażeń POSIXowych (ereg i spółka), a dokumentacja tyczy się PCRE (preg_match i spółka).
Perlowe regexy są chyba poprostu lepsze ;)
Proszę bardzo.. Synchronizacja jest zrywana (obraz płynie do góry) i wziąłem klatkę, na której najlepiej widać.
Zgadza sie, tylko PHP jakoś nie lubi '?' za innymi znacznikami powielającymi. :/
Tak źle chyba nie jest. W tej dokumentacji w rozdziale Repetition piszą, że if a quantifier is followed by a question mark, then it ceases to be greedy, and instead matches the minimum number of times possible. Sprawdzałem i działa.
Nie mam w tej chwili czasu na pisanie programów, ale mam atarke podpiętą do karty TV. Niech ktoś machnie programik to uruchomie. XXL: zapodaj też programik generujący to, czego screena dałeś w pierwszym poście.
Mały:
Helion wydał książeczkę Jeffrey E. F. Friedl "Wyrażenia regularne". Na emulu jest nawet drugie wydanie jako "Mastering Regular Expressions" :)
Lizard:
Zauważyłem ten błąd zanim wczoraj poszedłem spać, ale nie chciało już mi się włączać komputera ;)
Defacto te wyrażenie jeśli działało to tylko przypadkiem i zamiast ([^]]*) powinno być to co w drugim przykładzie, czyli (.*?). Znak zapytania po gwiazdce sprawia, że jest ona leniwa i zjada tak mało jak się da i zatrzyma się na pierwszym ciągu, który dopasuje się do dalszego fragmentu, dzięki czemu nie mamy ograniczenia na ilość znaczników - wyrażenie zawsze dopasuje się do pierwszej pary.
Co do przewagi szybkościowej eregów nad pregami to dokumentacja jednak mówi, że te drugie są zwykle szybsze :)
Fox:
XSLT jak najbardziej jest w php ale to oczywiście offtopic, bo wątpie żeby Mały używał zagnieżdżonych znaczników ;)
sun:
daj proszę linka do tej klasy bo tak jakoś nigdzie nie mogę jej znaleźć...
Czy pytanie jest podchwytliwe, czy wystarczy coś takiego?
$string="jakis text [znacznik]tu informacja ktora chce wyciac[/znacznik] i dalej jakis text";
preg_match('@\[znacznik\]([^]]*)\[/znacznik\]@', $string, $match);
$twoj_tekst=$match[1];
echo $twoj_tekst;
jeżeli znacznik może być czymś innym niż te brzydkie [znacznik] i [/znacznik] to RE może być o wiele prostrze. np dla ~%~ mamy:
preg_match('/~%~(.*?)~%~/', $string, $match);
(wywal znak zapytania jeśli ma brać najdłuższy ciąg pomiędzy dwoma ~%~ (teraz bierze najkrótszy))
Przy symulacjach reakcji jądrowych pewnie nie wystarczy ;)
To o czym pisał Pet, to nie windowanie wymagań, tylko unikanie ponownego wynajdowania koła.
Post jest "długi", jeśli można wyodrębnić z niego więcej niż jedną myśl, do której można się odnieść, a więc, gdy można podzielić go na fragmenty. Gdy taki podział niszczy jego zawartość, wówczas post jest "krótki".
No własnie. Kierowniku. Jak to z tym jest? Można cytować fragment ostatniego posta, czy nie? ;)
dely napisał/a:bori napisał/a:Nie zgadzam sie w 100% ze wszytkimi punktami regulaminu
Podaj sporne punkty.
Osobiscie to boli mnie ten punkt ktory aktuanie lamie czyli pkt 8 - Uwazam iz przy odpowiadaniu na bezposredni post czasem jest bardzo sensownie zacytowac fragment na ktory sie odpowiada.
Ależ fragmenty można cytować. Pkt 8 tyczy się cytowanie całego posta :)
W tej konkretnej sytuacji było widać słabą stronę utrzymywania prządku na forum: W warningach nie było żadnej informacji co było źle i posty były odrazu poprawiane. Nie dziwię się, że Sylwiusz nie wiedział co zrobił źle. Nawet jeśli przeczytał regulamin, to widząc przeedytowany post mógł "zapomnieć", że wcześniej napisał go w niepoprawny sposób (może wypowiada się na wielu innych forach i nie pamięta dokładnie każdego swojego posta). Warning powinien mieć szablon np. MM: Niezgodność z #8 punktem regulaminu. Post wyedytowany
atari.area forum » Posty przez laoo/ng
[ Wygenerowano w 0.139 sekund, wykonano 12 zapytań ]