Ale chodzi o te dwa bajty konkretnie ze sa uzywane przy starcie systemu a potem juz nie?
To po prostu przesune w gore zmienne zeby sie zaczynaly od $82. Zaden problem.
Myslalem ze $80 i $81 sa wykorzystywane tylko przy wlaczonym BASIC'u.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
TURGEN 9.3.0 Kolejna wersja multiplatformowego narzędzia do zarządzania obrazami taśm.
SV 2024 WE - program imprezy Już za tydzień odbędzie się zimowa edycja Silly Venture
Nowa obudowa dla 800XL - zostało 36 dni Niewiele ponad miesiąc do końca kampanii.
Zmarł twórca języka BASIC Zmarł Thomas E. Kurtz twórca języka BASIC
Zmiana serwera atari.area Serwis przeszedł właśnie ważną aktualizację infrastruktury
atari.area forum » Posty przez nosty
Ale chodzi o te dwa bajty konkretnie ze sa uzywane przy starcie systemu a potem juz nie?
To po prostu przesune w gore zmienne zeby sie zaczynaly od $82. Zaden problem.
Myslalem ze $80 i $81 sa wykorzystywane tylko przy wlaczonym BASIC'u.
Napisalem program w XASM (v. 3.02). Wygenerowany XEX odpala sie prawidlowo na Atari800win oraz na Altirze 1.8. Ale przy probie odpalenia na prawdziwym Atari przez SIO2SD, program nie startuje (choc sie laduje). Mam takie objawy: widze normlnie ekran w trybie 0 z kursorem, ale jest dodany jeden znak (w lewym gornym rogu): "k" w inversie. I tyle. Zwis w tym momencie.
To o tyle dziwne, ze praktycznie pierwsze co robie w programie to ustwienie DL, ktory wlacza tryb 4 Antica.
Oczywiscie odpalam bez BASIC'a.
Program umieszczam od adresu $2000, na stronie zerowej wykorzystuje adresy od $80 w gore.
Nie chce umieszczac tu calego programu, ale poczatek mam taki jak nizej.
Pytanie: czy to jakis typowy objaw? o czyms zapomnialem?
Czy tez musze szukac szczegolowo co sknocilem...
CHBASE equ $D409 ;adres zestawu znakow (starszy bajt) ma cien CHABS - $02F4 (756)
CHBAS equ $2F4
dliadr equ $230
obr equ $58
org $80
tab1 dta 0,0
;rezerwacja dalszych zmiennych
run start
org $2000
pmg_memory_1
org *+$800
pamiec_ekranu
org *+$800
buf_gen_znakow
ins 'fonty1.fnt'
buf_gen_znakow_level_1
ins 'lev1.fnt'
start
mwa #dl dliadr
mwa #pamiec_ekranu obr
lda #>buf_gen_znakow
sta CHBAS
;tu leci dalej program
;wlaczenie duszkow, ustawienie przerwan itp
;----------------------------------------
;display list
dl dta $70,$70,$70
dta $44,a(pamiec_ekranu)
dta $04+$80
dta $04
dta $04+$80
dta $04+$80
dta $04+$80
:19 dta $04
dta $41,a(dl)
No ja mam taka opaske :)
Na najblizszym party masz jak w banku ze w niej wystąpie :D
Kur... Nać!
Sikor, mozesz wskazac, gdzie napisalem o tych "milionach", ktore chcesz zarobic?
Pisalem jedynie, ze "rozumiem, ze chcesz cos zarobic" majac na mysli caly pomysl sprzedazy plakatow, ktory wydal mi sie bezsensowny i niewart Twojego czasu. ROZUMIEM, bo sam cos czasami skladam i sprzedaje.
Naprawde sadzisz ze sugerowalem ze dorabiasz sie majatku na plakatach, pocztowkach za 1zl czy dlugopisach? Naprawde? Masz mnie za idiote? Bo piszesz takim tonem jakbym Cie wrecz posądzil o probe oszustwa i wymuszenia.
Przeciez z tym drobiazgiem jest wiecej pier...nia sie z samym pakowaniem i wysyłką, niz to wszystko warte. Mi by sie ksiazki adresowej wypelniac nie chcialo.
Po prostu ceny, ktore podales wydaly mi sie odrealnione, a sam pomysl chybiony i tylko to napisalem i podalem argumenty. Mozesz mnie olac i robic swoje.
Generalnie nie rozumiem Twojego obrazania sie o kazde slowo nawet nie krytyki, ale nawet dyskusji z Tobą.
Czlowieku, Ty WSZYSTKO interpretujesz przeciwko sobie i natychmiast strzelasz focha albo sie urlopujesz! Masz poziom wrazliwosci na tak wysokim poziomie, ze tak gruboskornej osobie jak ja, uniemozliwia to dyskusje z Tobą.
Moge tylko powiedziec, ze szczerze mi przykro jesli Cie urazilem i skonczyc temat.
Ale nie ma czym sie chwalic.
Początkowo zrobilem tak jak tebe radzil, a xxl uzupelnil. Czyli:
lab1
lda #0
sta wsync
sta COLBAK
lab2
lda #0
sta COLPF0
lab3
lda #0
sta COLPF1
...
Przy czym na koncu procedury bylo pobranie z tabeli wartosci kolorow dla kolejnego wywolania przerwania i wpisanie ich wartosci do lab1+1, lab2+1, lab3+1. To przygotowanie kolejnego wywolania moglo byc juz robione "wolno", bo nie mialo wplywu na biezace wyswietlanie.
Dzialalo, ale potem ta metoda okazala sie to bez sensu bo jest nieuniwersalna: ja potrzebuje czasami zmieniac kolory, a czasami pozycje playerow PMG, a czasami podmienic zestaw fontow...
Wiec poszedlem na latwizne i skopiowalem metode z G2F: kazde kolejne przerwanie ma swoja osobną procedure z zapisami w trybie absolutnym, a na koncu procedury wektor przerwania zostaje ustawiony na kolejną. Ten zestaw procedur bede jeszcze musial zmieniac dla kazdego levelu (bo beda dosc rozne graficznie). Pamieci zajmuje to wiecej, ale moge sobie na to pozwolic.
W koncu tylko w paru liniach ekranu wykorzystuje przerwania DLI.
Sikor, wejdz Ty sobie na alle i zobacz ile kosztuje wydruk cyfrowy plakatu A3 czy A2 w dowolnej ilosci np. 1szt. czy 10sz.
http://allegro.pl/listing.php/search?st … 0&sg=0
Wiem ze sa roznice w jakosci wykonania, gramaturze itp. ale generalnie mozna znalezc mase ofert za 5zl za A2.
Przy 500szt. to juz jest druk offsetowy a nie cyfrowy i cena spada <1zl. za sztuke. Ale przeciez nie znajdziesz chetnych na 50szt. a co dopiero na 500.
Ja wiem ze chcesz cos zarobic, ale w czasach kiedy kazdy moze wejsc na alle, albo z pendrajwem do najblizszego osiedlowego punktu druku cyfrowego i wydrukowac w 10min. co tylko zapragnie taniej, to raczej kiepski pomysl.
Dzieki, wszyscy bardzo pomogliscie.
Faktycznie w Atari800win tez sa te liczby.
Dzieki!
Watku o przyspieszaniu KL kiedys nie czytalem wogole bo nie rozumielam ;) teraz moze byc dla mnie bardzo pouczajacy.
Potrzebuje zmierzyc ile czasu (cykli) zabiera wykonanie dosc zlozonej procedury w asemblerze. Zrobic to w debuggerze byloby mi bardzo trudno, bo procedura wymaga "kontekstu": odpowiednio wypelnionych obszarow pamieci, ekranu, itp.
Chcialem uzyc Atari800win ustawiajac w konsoli F8 pulapki na adresach na poczatku i na koncu procedury.
Ale nadal nie wiem jak zmierzyc czas. Podejrzenie $0012-$0014 nic nie da, bo procedura jest szybsza niz ramka.
Jak to najlatwiej zrealizowac?
Dzieki za pomoc.
Ladny??? To chyba mamy inne gusta :P Ta obudowa jest straszna.
To tak jakbys powiedzial o takim wizualnym potworku jak TOMS, ze jest to "ladna stacja".
Zreszta... Ty bys pewnie powiedzial... :)
http://atariki.krap.pl/index.php/Rejestry_GTIA#HPOSP0
Moze to detal, ale wyszlo mi z testow ze standardowe pole gry w poziomie zajmuje pozycje od 48 do 207 licząc jako pozycja pozioma PMG, a nie jak podaje opis rejestru od 41. No i w sumie powinno byc przeciez 160 punktow.
Piszę tutaj, bo nie czuję sie kompetentny w edytowaniu Atariki, wole sie upewnic ze nic mi sie nie pomieszalo...
A ja tez posiadam takiego Z-Tacka. Kupilem kiedys na Allegro skuszony wlasnie tymi wysokimi rarity. I na eBayu akurat byla jakas sztuka ale jakos szału nie bylo... kilkadziesiat dolcow chcial sprzedajacy a chetnych braklo.
Obawiam sie tez ze moze byc roznica miedzy NTSC a PAL (ja posiadam PAL). Kolekcjonerzy 2600 to glownie Amerykanie i jakos carty PAL, pochodzace z Europy, sa czesto poza ich zainteresowaniami. Nawet AtariAge nie ustala rarity cartow PAL.
Dziwne to dla mnie, bo w przypadku Atari 8-bit egzotyczne carty (kanadyjskie, meksykanskie, arabskie) sa bardzo poszukiwane.
Nie nie... Ja kupilem automat "noname" z likwidowanego salonu gier. W srodku byla matka neo-geo. Jak mi sie znudzily dwie gry, ktore mialem to sprzedalem neo-geo i kupilem wlasnie taki kompletny emulator oparty na MAME, bedacy mini PC z dodatkowym interfejsem do złącza jamma.
A niedawno kupilem cos jeszcze prostszego: Blue Elf: http://www.jammaparts.net/jamma-boards/ … ion-2.html
Wszystko na jednej plytce, ale to tez na 100% jest oparte na MAME.
czytałem gdzies wywody tego gościa na jakimś handheldowym forum, w środku jest zwykły PieCyk z emulatorem MAME.
Czyli tzw "MAME Machine" czy jakos tak.
Mam pelnowymiarowy automat w ktorym uzywalem dwoch takich "multigame engine" opartych na MAME (100 in 1 oraz 300 in 1), a wczesniej dla porownania mialem w nim oryginalne NEO-GEO, i powiem Ci ze odczucia z gry na takim emulatorze są naprawde bardzo naturalne. Chyba najslabszym elementem jest dzwiek w niektorych grach.
Aha, mi jest troche blizej do filingu oryginalnych automatow, bo mam w automacie oryginalny kineskop i zlacze jamma a nie monitor PC.
Ten czlowiek juz nie pierwszy raz wystawia taki automat i bardzo dziwi mnie nikle zainteresowanie. Patrzac na jakosc wykonania to cena jest bardzo atrakcyjna. Analogiczne automaty na zachodzie kosztuja kilkukrotnie wiecej.
Sam bym kupil chetnie ale nie mam juz miejsca :P
buahaha
tebe - Mistrz Taktownej Odmowy :D
W sumie nie moja sprawa, ale kiedy zapytam Inserta na jakims zlocie czemu od dawna nic nie narysowal, nie chcialbym uslyszec: "Piksele na ekranie Atari sa ogólnie dostepne" ;)
wiedzialem... za ladnie wygląda na gołym Atari? :)
Najbardziej zajebista jest w tym wszystkim zmienna szerokosc czcionki! Jesli dobrze licze, to w ten sposob mozna uzyskac w linii przecietnie okolo 60 czytelnych znakow.
Toz to jakas paranoja...
tebe - a jakie sa wymagania g2f wzgledem madsa? (wersja, wymagane polozenie, dodanie do sciezek?). Nie ma o tym nic w instrukcji a w zipie g2f nie ma zalaczonego mads'a.
Antywir nie blokuje mi mads'a. Odpalalem go recznie bez problemu, uzywa go tez Atalan.
Program G2F mam w prostym katalogu: X:\XL\g2f
W tym katalogu zapisalem dwie wersje programu:
g2f_3905.exe
g2f_3864.exe
3905 NIE zapisuje XEX'a niezaleznie czy w katalogu programu jest MADS, czy tez go nie ma, probowalem odpalic najpierw madsa recznie (choc nie wiem co to niby mialoby zmienic) - tez nie pomoglo.
3864 zapisuje mi XEX'a elegancko nawet jak programu mads.exe nie ma w katalogu! O_o
Z tego co pamietam wersja 3.8.8.4 tez dzialala prawidlowo (nie moge sprawdzic bo ją nierozsadnie skasowalem a teraz nie mam skad sciagnac).
Nie mam dalszych pomyslow. W tej chwili w ramach obejscia problemu pracuje pod 3905, a do wygenerowania xexa przesiadam sie na 3864.
Jesli nikt nie ma takich problemow jak ja to widocznie jest to unikalny problem zwiazany z moim kompem/systemem i nie ma co tracic czasu tebe na jego naprawianie.
hehe, skad wiesz, ze cos fajnego? :)
Na razie glownie sie ucze i wkurwiam tebe'go :D
posprawdzam wieczorem na drugim kompie z WinXP i z prostszymi nazwami katalogow.
faktycznie maloprawdopodobne zebym odkryl bugi, ktorych nie widzi zaden inny uzytkownik
A bo nakreciles ludzi jaka to zajebista sprawa zbieranie tych figurek, wiec teraz bedziesz mial konkurencje 20 nowych kolekcjonerow :D
No i super. Dzieki Panowie, o to chodzilo.
Zoptymalizowalem procedure, sztuczka z przygotowaniem kolorow dla kolejnego przerwania przez _a lda #$ff / sta _a+1 zalatwila sprawe i wszystko ladnie sie wyrabia.*
* EDITED: wyrabiam sie (na Atari800Win) ze zmianą 4 kolorów. Z 5 sie nie da. Nie to zebym operował taka ferią barw że potrzebuje zmieniac 5 kolorow w jednym przerwaniu, ale chcialem miec procedure uniwersalną. Teraz wiem ze z odrobiny uniwersalnosci musze zrezygnowac.
Otwieram JAKIKOLWIEK plik z Examples, chocby z katalogu tebe: Dog_Atari_Tebe.g2f
Nie robie z nim nic.
Wybieram Save as... Na dole wybieram XEX, wskazuje inny katalog niz ten z ktorego otworzylem obrazek, albo inna nazwe pliku. Klikam Zapisz.
Nie zapisuje sie XEX tylko dwa pliki: Dog_Atari_Tebe.FNT i Dog_Atari_Tebe.SCR.
Jak robie nowy obrazek (DLI, 40znakow, 2x1) i rysuje cokolwiek: np. kółko. Proboje zapisac jako XEX i objawy mam jak wyzej.
Aaaa... zapomnialbym: proba zapisu pliku ASM jest tez ciekawa.
Jak robie nowy rysunek i kaze go zapisac jako DUPA.ASM, to powstają pliki:
.asm
.fad
.h
.pmf
dupa.fnt
dupa.scr
A jak otworze jakis rysunek G2F z Examples i kaze go zapisac w innym katalogu jako ASM, to tam gdzie pokazalem zostają zapisane tylko dwa pliki: FNT i SCR, natomiast inne pliki, o rozszerzeniach: asq, fad, h, pmf, zostaja zapisane w katalogu w którym byl plik g2f, ktory otworzylem.
Takie szopki mam za kazdym razem na nowej wersji programu. Uzywam Win XP.
ręce opadają jak widzi się taki "optymalny" kod dla DLI, widziałeś kod G2F i nie zastanowiło Cię czemu nie ma tam pla, pha, czemu są rozkazy ładowania LDA# a nie LDA ....,y
POCZYTAJ NOSTY ATARIKI, BO JEST TAM WIELE NA TEMAT OPTYMALIZACJI DLI
NAJPIERW CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ, CZYTAJ
Dzieki Tebe, ale oczywiscie ze najpierw szukalem. Nie pisze na forum od ręki kazdego pytania, ktore przyjdzie mi do glowy!
W Atariki znalazlem tyle :P
http://atariki.krap.pl/index.php/DLI
Wlasnie nigdzie nie moglem znalezc kluczowej informacji: ile taktow mam do dyspozycji.
Dlatego zapytalem na forum.
I jak pisalem, podejrzalem jak to robi G2F w ASM, ale powodow ze kod jest taki a nie inny mogla byc cala masa, z Twoją fantazja na czele ;) Poza tym to jest kod generowany automatycznie. Nie zawsze rozsądnie jest uczyc sie na takim.
Nie przypuszczalem po prostu, ze trzeba AZ TAK oszczedzac czas w DLI.
Tebe ja wiem, ze Tobie trudno jest zrozumiec, ze ktos moze nie znac takich podstaw, ale nie krzycz na mnie. Czytam gdzie sie da, ale diabel tkwi zwykle w szczegolach, ktore ciezko znalezc w ksiazkach.
Probuję zrobic rzecz banalną: zmienic kolory na DLI. I mam problemy.
Pytanie:
kiedy DOKLADNIE zaczyna sie przerwanie DLI w trybie znakowym Antic 4 i ile taktow trwa od zakonczenia rysowania linii (sta WSYNC) do momentu powrotu plamki elektronowej (rozpoczęcia rysowania kolejnej).
Otóż zaprojektowalem sobie wszystko w G2F i potem chcialem recznie przeniesc zmiany kolorow do mojego programu.
Mam 24 linie tekstowe Antic 4. W kazdej zezwolone przerwanie.
Spodziewalem sie ze przerwanie wywolywane jest w czasie rysowania ostatniej linii pixelowej w danej linii tekstowej.
Czyli (jesli linie pixelowe numerujemy od 0), przerwanie bedzie wywolane przed zakonczeniem rysowania linii: 7, 15, 23, 31...
Ale z eksperymetow wychodzi mi ze kolory zmieniają sie dopiero w czasie rysowania kolejnej linii (8, 16, 24...) a czasami nie zdążą sie zmienic nawet do rozpoczecia rysowania jeszcze kolejnej!
Podejrzalem w pliku ASM generowanym przez G2F jak on to robi. Bardzo oszczednie.
Ale ja bede zmienial kolory bardziej dynamicznie, zaleznie od rozwoju akcji w grze, wiec potrzebuje bardziej uniwersalną metode zmiany kolorow.
Zbudowalem sobie tabele 24x8 bajtow. Z kazdych 8 bajtow pierwszych 5 wykorzystuje na wpisanie jakie kolory mają byc ustawione w przerwaniu danej linii znakowej. 3 kolejne bajty są niewykorzystane.
kolory_dli
dta $98,$FE,$FC,$0E,$0C,$0,$0,$0 ;kolory ktore maja byc ustawione po 0 linii znakowej (od 8 pixelowej)
dta $98,$22,$26,$1C,$00,$0,$0,$0 ;po 1
dta $98,$22,$26,$1C,$00,$0,$0,$0 ;po 2
...
W zmiennej linia_dli przechowuję aktualny nr linii znakowej od 0 do 23 (zeby wiedziec w przerwaniu ktorej linii jestem). Zeruje ją w VBLI.
Przerwanie DLI ma u mnie taką postać, wydawalo mi sie, ze schludną i optymalną ;) Czy to mozliwe ze sie nie wyrabia?
Jesli tak, to zalamka :/ To tylko zmiana kolorow, a chcialem jeszcze zmieniac pozycje X duszkow...
;przerwanie DLI
set_col
pha
tya
pha
;wait__line
sta WSYNC ;zapis czegokolwiek
lda linia_dli
asl @
asl @
asl @ ;teraz mamy w A numer linii pomnozony x8
tay
lda kolory_dli,y
sta COLBAK
iny
lda kolory_dli,y
sta COLPF0
iny
lda kolory_dli,y
sta COLPF1
iny
lda kolory_dli,y
sta COLPF2
iny
lda kolory_dli,y
sta COLPF3
inc linia_dli
pla
tay
pla
rti
Czy tylko ja nie moge zapisac XEX'a w najnowszym G2F (3.9.0.5)?
Zarowno przez "Save as..." --> XEX, jak tez z zaznaczoną opcja majacą zapisywac XEX'a razem z zapisem g2f nic sie nie zapisuje.
Znalazlem starsza wersje 3.8.6.4 i ta nie ma takich problemow.
atari.area forum » Posty przez nosty
Wygenerowano w 0.111 sekund, wykonano 18 zapytań