Przejdź do treści forum
atari.area
Twoje polskie źródło informacji o Atari
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Aktywne tematy Tematy bez odpowiedzi
Aktualności ze świata Atari
Jagracer - nowa gra na Atari Jaguar Niesamowite, teksturowane wyścigi na klasycznego Jaguara.
Sfotty Pie Sfotty Pie, emulator Atari i narzędzia 6502, otrzymuje dużą aktualizację i wersję przeglądarkową.
Harmonogram Lost Party 2026 Poznaj szczegółowy plan kultowego zlotu demoscenowego Lost Party 2026 w Licheniu Starym.
Drwal 1.3 od Larka Nowa wersja gry Drwal przynosi poprawki w algorytmach i balansie rozgrywki.
FujiGPT - klient LLM dla Atari XL/XE FujiGPT pozwala na rozmowę z modelami językowymi na klasycznych ośmiobitowych komputerach Atari.
Opcje wyszukiwania (Strona 111 z 193)
git, czyli teraz TOS 4.04 działa na ST?
pewnie było sporo łatek. Będzie można je obejrzeć?
Fajne. Jakby co to zapisane obrazki można obejrzeć online: http://260ste.appspot.com/
Tomasz Wachowiak napisał/a:Zachwycające. :D Poważnie. Świetny pomysł. Nie ma to, jak wyciskać ostatnie soki ze słabego sprzętu.
Dzięki. Wyprodukowałeś naprawdę fajny kod, przy nim optymalizacja BLiTTERa to błahostka :)
Swoją drogą BLiTTER był mocno niedoceniany ale myślę że może on czymś nas zaskoczyć.
Tomasz Wachowiak napisał/a:Myślę, że dzięki przekonfigurowaniu programu da się jeszcze z 5% uszczknąć.
pewnie tak.
można jeszcze spróbować z rozdzieleniem linii - krótkie CPU; długie BLiTTER.
Tomasz Wachowiak napisał/a:Muszę tylko żonę przekonać, żeby mi trochę czasu na testy dała :P
I będziemy kurdę najlepsi.. :P
hehe :)
fajne Wachu.
dawaj więcej :)
Może jeszcze dziś uda mi się wrzucić kod źródłowy.
Główną ideą było zaoszczędzenie cykli procesora przez usunięcie zbędnych instrukcji (zaskakujące :) ). Tak więc, podzieliłem kod blittera na trzy części - wykonywaną: tylko raz; raz na trójkąt; co każda linia. Najbardziej czasochłonna jest ta ostatnia, gdzie BLiTTER był programowany tymi samymi wartościami dla każdego bitplanu osobno.
Moja optymalizacja to wykonanie tylko jednego blittu dla wszystkich bitplanów. Rejestr yCount zawiera ilość wypełnianych bitplanów a dstYinc wartość ujemną - przesunięcie każdego bitplanu.
Haczyk tkwi w wykorzystaniu rejestrów Halftone, Line Number i OP. Dla wariantu 16sto kolorowego potrzeba 128 bajtów pamięci (16kolorów * 8bajtów), a dostępnych są 32 bajty.
--edycja--
dodałem plik dla wersji 4P. Teraz obsługuje tylko 4 bitplany. W wolnej chwili dorobię wariant dla innej ilość bitplanów.
Mam pomysł inną implementację BLiTTERa. Chodzi o wykorzystanie rejestrów Halftone i Line Number.
Zrobiłem już pierwsze testy no i widzę że można dopalić całość jeszcze o kilkanaście procent.
---edycja---
Pierwsza próba.
To jest oryginalny BTRI4P:

a to z nową implementacją BLiTTERa:

Jest jeszcze jeden mały błąd w procedurze krótkich linii (czubek trójkąta ma inny kolor). Jutro rzucę na to okiem.
kawał historii
Nowy wątek będzie ok. CosmosEx jest cały czas rozwijany więc jest szansa na poprawę funkcjonalności.
Na Windows jest Ym2149 Tracker: http://www.fedepede04.dk/Ym2149.html#ymtracker
W tym wątku publikowane są nowe wersje http://www.atari-forum.com/viewtopic.ph ... mp;t=21499
Jeśli chodzi o opinię o CosmosEx, to mam go oraz UltraSatan, USB floppy emulator i Eiffel Ps2 adaptor. Kolokwialnie mówiąc CosmosEx zjada je w przedbiegach :) Ma więcej funkcji niż wszystkie one razem wzięte. Dodatkowo ma niezłą cenę no i można go zamontować w środku STka.
Dla mnie killer funkcją jest WiFi i opcja Shared Drive. Czyli STkowy dysk to tak naprawdę udostępniony katalog na pececie w innym pokoju.
ErOS, gdzieś w pierwszej połowie lat 90' (na pewno przed Quast 95) słyszałem o tym zamieszaniu między QuaST i T.F.T.E. O co poszło?
Pouet to inna bajka. Jest to dobre miejsce ale dla kompletnego projektu. Jest tam paru wartościowych koderów 68k (czy to z amigi czy /|\) ale niestety duży odsetek to durnie typu "jestę demosceno" lub "amigaaahhh".
Myślę że własna strona ze źródłami to dobre rozwiązanie.
ErOS, chodzi o Awaken?
ok mam. VASM nie łapie "IFGT planes-1=0" i generuje tylko kod "ENTEREXIT"
planes equ 4
dc.b 'ENTR'
IFGT planes-1=0
REPT planes-1
nop
ENDR
ENDC
dc.b 'EXIT'
Wysyłam maila do Franka.
Swoją drogą czy nie powinno to być ""IFGT planes-1" ?
Devpac łyka Twój kod ale w dokumentacji jest to tak opisane:
" IFEQ expression
IFNE expression
IFGT expression
IFGE expression
IFLT expression
IFLE expression
These directives will evaluate the expression, compare it with
zero and then turn the conditional assembly on or off depending on
the result. "
Tomasz Wachowiak napisał/a:Dziwne. Trochę zmieniłem includy, więc jeśli wrzuciłeś tylko fillera do katalogu z poprzedniej wersji, to może rzeczywiście coś nie zadziałać. Wrzucę PRG, sprawdź, czy będziesz widział trójkąt.
Twój PRG działa ok. Devpac kompiluje również ok. PRG z VASMa coś nie działa. Jeszcze to sprawdzę i jakby co to zgłoszę problem do Franka Wille
Osobiście dla mnie to jest ok.
Problem z forum AA jest taki że osoba niezalogowana nie pobierze pliku. Czyli ograniczamy się tutaj do garstki osób z PL.
--edycja--
widzę tylko szary ekran
Fajny kod, może da się jeszcze jakoś zoptymalizować.
Miałbym jedną prośbę aby dodać "endif" w pliku ste_blit.s w MACRO "sblit macro".
Teraz za każdym razem gdy kompiluję Twoje testy muszę robić to ręcznie :)
stryker napisał/a:pamiętacie ? ;>
pamiętamy,
% wysłany
no cacy.
maskownica będzie wyzwaniem
ok.
W necie krąży sporo mitów dot. hardware i kodowania, może to być jeden z nich.
tak na szybko widzę że ustawiasz i Video Base oraz Video Counter. Ja tylko modyfikuję Video Counter.
hmm, no może.
Z tym że o tym HBLu czytałem w jakiejś dokumentacji.
a oto dalszy ciąg kodu:
scrn_poi:
REPT 2
nop
ENDR
lea Licznik_Ekranu1+1,A0 ; ustaw nowy adres ekranu
move.b (A0)+,$FFFF8205.w
move.b (A0)+,$FFFF8207.w
move.b (A0)+,$FFFF8209.w
Maciek, gdy z kodu usunę " STOP #$2300 ; wait for 1st HBL" przesuwanie ekranu traci stabilność - co jakiś czas ekran skacze. Czyli w moim przypadku zmiana $FFFF8265 od razu w VBLu nie działa prawidłowo.
W wolnej chwili mogę sprawdzić czy ze zmianą $FFFF8265 trzeba czekać do HBLa (512 cykli) czy można wcześniej jej dokonać
obaj macie rację :)
w moim teście zmieniam $FFFF8265 po pierwszym HBLu a $FFFF820F modyfikuję o 8 bajtów ( -8 bajtów dla hscroll==0) i działa to ok
Petla_VBL
STOP #$2300 ; wait for 1st HBL
move.w #$2500,SR
addq #1,D2
cmp.w #576,D2
blt.b .skip
moveq #0,D2
.skip
moveq #0,D5
move.l D2,D3
and.b #$0F,D3
move.b D3,$FFFF8265.w
bne.s fix_line
move.l Adres_Ekranu,Licznik_Ekranu1
move.b #224-80,$FFFF820F.w ; x-words
move.l D2,D3
and.w #$FFF0,D3
lsr.l #1,D3
add.l D3,Licznik_Ekranu1
bra.s scrn_poi
fix_line:
move.b #224-80-4,$FFFF820F.w
scrn_poi:
wiesz, poszłem i obeszłem :)
słuszna numeracja
Atari 666XL i Atari 666ST
Znalezione posty [ 2,751 do 2,775 z 4,813 ]
Forum oparte o: PunBB
Currently installed 7 official extensions. Copyright © 2003–2009 PunBB.
Wygenerowano w 0.185 sekund, wykonano 32 zapytań