Temat: pytanko laika
Czy ktoś mógłby pokazać jak napisać kod dla atasma
programiku, który wyświetliłby na ekranie (w np. GRAPHICS 11) kropkę, lub kreskę
i czekał na naciśnięcie fire lub przycisku z klawiatury?
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
FujiNET firmware v1.3.0 Nowa wersja oprogramowania do interfejsu sieciowego FujiNET. Tym razem z obsługą TCP!
hatari 2.5.0 Od dwóch dni dostępna jest najnowsza (2.5.0) wersja Hatari.
Grawitacja 2024 Czas na kolejną edycję 8 bitowego GameJamu.
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!
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
Czy ktoś mógłby pokazać jak napisać kod dla atasma
programiku, który wyświetliłby na ekranie (w np. GRAPHICS 11) kropkę, lub kreskę
i czekał na naciśnięcie fire lub przycisku z klawiatury?
1.
LDA #1
STA $jakas_komorka_w_zdefiniowanej_przez_pamieci_obrazu_ciebie_display_liscie
wszystko zalezy od tego co dasz antic-owi do wyswietlania...
chcesz sie dowiedziec cos wiecej - http://www.jsobola.republika.pl/literat/dere.zip
albo ,,piszemy demo'' w tajemnicach atari (http://tajemnice.atari.org/)
2.
LDA #$FF
STA 754
LOOP LDA 754
TAY
INY
BEQ LOOP
po tym, pod adresem 754 (0x02f2, pisane tez jako $2F2) masz kod ostatnio wcisnientego klawisza
(w sumie to i w akumulatorze tez)
dodatkowo spod adresu $278 odczytasz stan pierwszego joysticka (+1 drugiego, +2 trzeciego, +3 czwartego)
a spod adresu $284 stan przycisku pierwszego joysticka (+1, +2, +3 j.w.) przy czym stan 1 to przycisk zwolniony
Ostatnio edytowany przez jellonek (2005-10-31 14:02:54)
ok. jesli potrafisz z poziomu assemblera (czy w jaki kolwiek inny sposob) ustawic jakikolwiek
tryb graficzny (hint: poczytaj o 'open "S:"') to pod $58 bedziesz mial wskaznik do poczatku
czytanego przez antic-a obszaru pamieci zwanego frame buffer. taka informacja powinna sporo uproscic
poszukiwania... ;)
dziękuję jellonek, biorę się za poszukiwania i naukę;-)
chlip :-( nie mogę skompilować przykładu (ten zaczynający się od Program Equ $8800) z http://tajemnice.atari8.info/4_92/4_92_demo.html ; nawet w quick assemblerze; nie mówiąc o ataśmie. Czy ktoś może mi pomóc?
dodam tylkoże podczas assembly w qa wyskakuje coś mniej więcej takiego:
8819 Sta Dlptrs+ 0027
undeclared label
Pass 2 Line 0041 Failure!
undeclared label tzn użyto w programie niezadeklarowanej etykiety.
Sprawdź cały zapis , szczególnie tam gdzie występuje Dlptrs
W drugiem obiegu assemblacji błąd został wykryty
prawdopodobnie niedoczytales tego ze w danym listingu nie zostaly zamieszczone procedury wystepujace w poprzednim (ktore zostaly z nazwy wymienione...)
az zajrze tam do tego artykulu ;)
btw. http://knip.pol.lublin.pl/~jellonek/atari/ta.zip - pelne archiwum tajemnic (sciagniete z tajemnice.atari8.info - nie dodawalem notki w pliku, bo go sporzadzalem na wlasny uzytek), z dodatkowymi dwoma .html-ami
1szy to indeks poszczegolnych nr-ow (co by sie wygodniej offline przegladalo ;) ), drugi to indeks tematyczny,
z linkami do kolejnych artykulow z danej serii, np. 5 linii, 6ta strona, 6502, piszemy demo i cos tam jeszcze...
moze sie komus przyda?
edited
ok - zajrzalem... problem na pewno nie jest w tym co podejrzewalem...
sprawdz czy dlptrs nie piszesz raz przez male 'L' a raz przez '1' bo kilka linii wczesniej masz
wlasnie przypisanie do tej etykiety stalej...
Ostatnio edytowany przez jellonek (2005-11-02 19:39:45)
8819 Sta Dlptrs+ 0027
Ja widzę spację po '+'.
Przepraszam, że tak długo nie odp.
Sprawdziłem kod i nie widzę nigdzie 1 :-(
Jest. Skompilowało się! Zamiast +l w Dlptr powinno by +1
No ale teraz widzę tylko czarny ekran i nic nie mogę zrobić :-(
rebisz to pod real atari, czy pod emulcem?
jesli pod tym drugim to mozesz listing zaczytac z emulowanego hd-ka ;)
tylko nalezy pamientac o konwersji znakow konca linii...
Piotr456: Podejrzyj źródło tego HTMLa. Przeglądarka pewnie Ci pokazuje "Ldx Dlist", a powinno tam być:
Ldx <DList
Ldy >DList
- to oczywiście wpadka tego, co robił tę stronę.
Lizard: to był fragment listingu - zawartość linii obcięta po plusie a 0027 to nr linii.
no na to bym nie wpadl :D, ale rzeczywiscie...
fox - twoje pomysly poprostu wymiataja :D
(w sumie z kodu to wynikalo, ale do puki sie nie wczytac... na trzezwo nie doszedlbym do tego, ale ze jestem po 7x leszek 0,66 ;) )
Poddaję się. Po dodaniu tego co wskazał Fox program assembluje się, lecz nie ma żadnego widocznego efektu. Po wrzuceniu na wirtualną dyskietkę kodu (i przekonwertowaniu na atascii) z podglądu strony w html-u program wywala opisany wcześniej błąd (undeclared label). :-(
i nie assembluje się. :-(
Dodam tylko, że używałem emulatora Atari800 Win 4.0.
Czy ktoś mógłby wskanować stronę (jako obrazek) z Tajemnice Atari 4_92 strona
piszemy demo? Czy w ogóle komuś to działało kiedyś poprawnie? Jeśli tak prosiłbym o podzielenie się swoimi uwagami...
W Tajemnicach Atari w kolejnych numerach (od TA4_92....) jest cykl o demo.
Ale to nie działa po przrpisaniu bo jest tam mnocho błenduf.
Demo to jednak uruchomiłem po "wgryzieniu" się w kod całości i zrozumieniu ... o co chodziło piszącemu.
Tak więc całe demo da się uruchomić ale trzeba zrobić poprawki w poszczególnych częściach. Ostateczny rezultat jest taki, że na ekran wyskakuje obrazek, porusza się tu i tam, no i gra muzyka. Na dodatke leci jakiś scrol z jednej strony w drugą.
Jak sobie przypominam, opis wykrytych błędów tego dema zamieściłem w SERIOUSie (chyba że się mylę). A całe demo z poszczególnymi częściami i wszystkim co trzeba mam na jednym z dysków :)
Czy mógłbyś je wrzucić na serwer razem z jakimś sprawnym asemblerom? Lub czy ktoś inny mógłby to zrobić? Byłbym wdzięczny bo od kilku dni się męczę z QA ściągniętym z internetu i nie mogę żadnego przykładu zobaczyć. Niby niektóre się asemblują (np. pierwszy z Seriousa 1) ale nie ma żadnych efektów, potem powraca ekran Qa. Nie wiem co robię źle :-(
Biorę się za szukanie w moich przepastnych zbiorach :) Znajdę to prześlę Ci
czekam z niecierpliwością...
Piszemy Demo TA 6-7 1992 str.35
U dołu środkowej szpalty jest etykieta L1 należy ją zmienić np. na L2
tym samym w prawej szpalcie u góry jest odwolanie do L1 należy zmienić na L2
Dlaczego. Bo do procedury należy dołączyć procedurę Klawisz z TA 4/92 str.13 a w niej jest już odwołanie do L1
Autorzy zapomnieli podać że procedurę Klawisz należy dołączyć, bez tego "program pierwszy" na str.35 TA 6-7 1992 nie uruchomi się
Inne "kwiatki" podam niedługo, bo też świętuję :)
Piotr456. Z rana... Pracuję pod QA na żywym Atari
Przykłady z TA 4/92 str. 13,14 działają. Czy ustawiłeś w SETUP adres startu na $8800. Okienko w prawym górnym rogu.
Potem należy zmieniać fragment zaczynający się od etykiety Dlist w/g podanych na str14. Co prawda na ekranie pojawia się przy okazji "kaszana" bo tak ma być, ale wyskakuje też napis Tajemnice Atari. Słowem, to działa
Ostatnio edytowany przez Zenon/Dial (2005-11-13 08:32:16)
Wreszcie działają przykłady z 13 i 14 strony TA!!:-) Dziękuję ci Zenonie za bezcenne rady. Oczywiście (teraz już oczywiście ;-) nie ustawiłem w setupie run na 8800 :-( Dzięki za sprawdzenie, bez tego nie przemógłbym się, żeby ściągnąć qa w djvu, a nie w html-u , przepisać i dokładnie wnikać w to co piszę. Dzięki Tobie teraz już wiem jak wziąść się za resztę kursu z TA. Jeszcze raz dziękuję.
Miło mi że mogłem pomóc. Znalazłem na dysku całość w .ASM demo opisywane w TA. Prześlę Ci za niedługo.
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
[ Wygenerowano w 0.085 sekund, wykonano 15 zapytań ]