1,676

(85 odpowiedzi, napisanych Software, Gry - 8bit)

pierwsza taka platformówka na Atari XE/XL, Włóczykij może być podobny jednak to nie to samo
gratulacje dla Probe i jego ekipy za ambitny projekt, nie poszli na łatwizne i nie zrobili kolejnej logicznej gry
poziom trudności w grze rzeczywiście jest momentami troche irytujący pomaga zapisywanie stanu pod emulatorem

sugerowałbym aby po śmierci bohater odradzał się bliżej miejsca gdzie zginął, tak aby nie trzeba było przechodzić ciągle od początku, wydłużenie skoku bohatera albo zmniejszenie odległości klocków

1,677

(8 odpowiedzi, napisanych Bałagan)

nie co tam napisano nie nalezy traktować poważnie

1,678

(69 odpowiedzi, napisanych Programowanie - 8 bit)

xxl napisał/a:

numer zestawu w zaleznosci od numeru wiersza czytany jest z tablicy pewnie, ale mi chodzilo o wpolrzedna x, czy jest ona dzielona, dodawany adres linii i na tej podstawie obliczany adres znaku tla?

nie ma tablic bo wszystko jest w kodzie programu, procedura odczytu znakow dla kazdego wiersza jest rozpisana, rozpisanie programu realizuje BCALC.ASM, a zaczyna sie tak:

; BCALC
; zadaniem procedury BCALC jest odczytanie 4*COLS znakow i obliczenie ich adresow
; dodatkowo po odczytaniu znakow zastepowane sa one nowymi znakami: FREE, FREE+1 ... FREE+COLS

bcalc
    lda posx
    :2 lsr @
    tax

    lda posy
    :3 lsr @
    tay

    lda ladr,y
    sta _jmp+1
    lda hadr,y
    sta _jmp+2

_jmp    jmp $ffff

pozycja X przeliczana jest na pozycje znaku w wierszu (x/4), na podstawie pozycji Y dokonywany jest skok do odpowiedniego programu obslugujacego wiersz


BCALC wywolywane jest z poziomu BAT-cha z roznymi parametrami, co powoduje wygenerowanie kodu dla 2-och buforow i 2-och roznych szerokosci ducha (cols=4 czyli 12 pixli, cols=3 czyli 8 pixli)

mads.exe bcalc.asm -d:bufor=2 -d:cols=4 -o:b2calc_12.obx -i:global
mads.exe bcalc.asm -d:bufor=3 -d:cols=4 -o:b3calc_12.obx -i:global

mads.exe bcalc.asm -d:bufor=2 -d:cols=3 -o:b2calc_8.obx -i:global
mads.exe bcalc.asm -d:bufor=3 -d:cols=3 -o:b3calc_8.obx -i:global

1,679

(69 odpowiedzi, napisanych Programowanie - 8 bit)

w pliku LOOP jest inicjowana zmienna FREE

mva    #charsBAK    free

zmienna FREE wskazuje na kod pierwszego wolnego znaku, numer zestawu znakowego ustalany jest na podstawie numeru wiersza

charsBAK w załączonym przykładzie ma wartość 56, czyli znaki 0..55 przeznaczone sa na tło, znaki 56..127 na duchy

1,680

(5 odpowiedzi, napisanych Kupię / Sprzedam / Zamienię Atari)

a gdzie CPU 65816 ?

1,681

(34 odpowiedzi, napisanych Fabryka - 8bit)

taki np. Windows potrafi byc w wersji filowej :)

1,682

(34 odpowiedzi, napisanych Fabryka - 8bit)

no to gratulacje

1,683

(2 odpowiedzi, napisanych Software, Gry - 8bit)

tutaj to wkleiłem jakiś czas temu

http://atariarea.krap.pl/forum/viewtopic.php?id=4374

1,684

(29 odpowiedzi, napisanych Programowanie - 8 bit)

Fox napisał/a:

W wolnej chwili możnaby zrobić lexer do kodu 6502. Lexer odpowiada też za zwijanie. Tylko jak zdefiniować co zwijać?

np. .PROC i .ENDP :)

p.s.

XXL po takiej poprawce znika podswietlanie składni

1,685

(29 odpowiedzi, napisanych Programowanie - 8 bit)

dzięki za wyczerpującą odpowiedź, zacząłem bawić się SciTE-m, przerobiłem jego plik konfiguracyjny MASM (NASM) na swoje potrzeby 6502 i jest OK. Z dodatkowych bajerów jest autouzupełnianie tekstu, SciTE uczy się jakie teksty są wpisywane i potem zaczyna je podpowiadać :)

Do zawijania kodu nie udało mi się zmusić SciTE, zresztą w instrukcji jest informacja że ta możliwość dostępna jest tylko dla konkretnych języków (assembler nie jest przewidziany do takich bajerow).

Z innych problemów to nie wiem jaki wpis w pliku konfiguracyjnym pozwoli na większą ilość operatorów komentarza, aktualnie tylko znak ';' jest akceptowany, w Code Genie jest to łatwiej rozwiązane, mogłem zdefiniować '//' jako komentarz jednoliniowy i '/* */' jako komentarz wieloliniowy, ktoś wie jak to zrobić w SciTE ?

1,686

(29 odpowiedzi, napisanych Programowanie - 8 bit)

nie zauważyłem aby Code Genie był za kase, używam wersji 3.0 build Jul 15 2002

1,687

(25 odpowiedzi, napisanych Scena - 8bit)

YERZMYEY nie rozumiesz kontekstu, SID co slychac probuje nasladowac POKEY-a i strasznie fałszuje, wiec gosc zwraca uwage że gdyby ten msx był na POKEY-u to POKEY wcale by nie falszował

trzeba wydobyc głębszy sens :)

1,688

(29 odpowiedzi, napisanych Programowanie - 8 bit)

w/w przez Was edytory w czym są lepsze od takiego Code Genie ? (jesli uzywaliscie Code Genie)

1,689

(23 odpowiedzi, napisanych Bałagan)

skoro Azbest pamieta tak dawne czasy to pewnie AMD kojarzy mu sie z czasami kiedy nie miał najlepszej opinii

1,690

(56 odpowiedzi, napisanych Sprzęt - 8bit)

to teraz komodziarze beda mogli wystawic swoje prace na atarowskich party ;)

1,691

(709 odpowiedzi, napisanych Fabryka - 8bit)

to kiedy bedzie "taka jak jest" Electron ?

1,692

(709 odpowiedzi, napisanych Fabryka - 8bit)

Electron sprzedał projekt zagranicznej firmie, ktora wlożyła go do sejfu i tyle

1,693

(3 odpowiedzi, napisanych Software, Gry - 8bit)

a nie na a7800 ?

1,694

(31 odpowiedzi, napisanych Emulacja - 8bit)

6r7gytv na nowo odkrywasz Ameryke

1,695

(6 odpowiedzi, napisanych Software, Gry - 8bit)

dzięki Miker

1,696

(3 odpowiedzi, napisanych Programowanie - 8 bit)

:) player na przerwaniu VBL wystarcza, w czym problem, trzeba tylko zadbać o to aby zawartość rejestrow AXY została zachowana

bo kazdy ma internet i moze go sciagnac, nie musi uzywac, INFLATE jest w formacie XASM

1,698

(69 odpowiedzi, napisanych Programowanie - 8 bit)

http://mads.atari8.info/softsprt_OK.zip

wersja najnowsza, zoptymalizowana detekcja kolizji (rozpisane petle), inne poprawki

15 duchow 12x24 z detekcja / 3 ramki
18 duchow 8x24 z detekcja / 3 ramki

programow pakujacych jest wiele, aktualnie najlepszym bo o najwyzszym wspolczynniku kompresji jest deflater FOX-a o którym wspomina Laoo, na PC jest paker DEFLATER.EXE (ogolnie jest to znana biblioteka kompresji/dekompresji ZLIB) a jego źródła procedury dekompresujacej dołączone są np. do pakietu z mads-em INFLATE.ASM

wystarczy podac adres spakowanych danych w zmiennej INPUTPOINTER (np. MWA #SOURCE INPUTPOINTER) i adres pod ktorym maja zostac umieszczone rozpakowane dane w zmiennej OUTPUTPOINTER (np. MWA #DESTINATION OUTPUTPOINTER), skoczyc pod adres INFLATE (np. JSR INFLATE) i to koniec.

jeśli zalezy nam na szybkości a nie na wysokim współczynniku kompresji możemy użyć naprostszej i najbardziej prymitywnej metody RLE, swojego czasu tutaj na forum opracowaliśmy najkrotszy depacker dla tej metody przy konkretnej formie zapisu spakowanych danych, program kompresujacy jest znów na PC, dekompresujacy dla 6502 http://mads.atari8.info/rle_encoder.zip (w zakladce Depacker sa dwie wersje depakera)

1,700

(69 odpowiedzi, napisanych Programowanie - 8 bit)

http://mads.atari8.info/softsprt_OK_18.08.06.zip

wersja z detekcja kolizji, z mruganiem i bez (mruganie tła sygnalizuje wykryta kolizje)

13 duchow 12x24 / 3 ramki
16 duchow 8x24 / 3 ramki

ogolnie detekcja kolizji wykonana dla kazdego ducha zmniejsza maksymalna liczbe generowanych w 3 ramkach duchow do 13 (bez detekcji 17)