101

(45 odpowiedzi, napisanych Programowanie - 8 bit)

Pare rzeczy mi sie tu nasuwa:

1. Jak danych wejsciowych jest 3k to z samego Huffmana nawet jakbys wszystko zakodowal
1 bitem to wyjdzie ci 50% ;) czyli 1,5k a nie 200 bajtów ;)

2. Wedlug mnie takie normalne RLE jest tu bez sensu jezeli dlugości powtarzania sie
nie sa wieksze niz 4-5 bajtow, a srednie powtarzanie masz w tych granicach. Czemu ?
Bo jak dodasz 3 bity na licznik chocby to juz masz  1 bit symbolu + 3 bity licznika
co daje 4 bity tyle samo by wyszlo gdybys po prostu zakodowal 4 x 1 bit danych
czyli skrocenie wystepuje dopiero przy 5 powtorzeniach o 1 bit, oczywiscie jeżeli
stosujemy RLE tylko do tego 70% znaku a reszte normalnie. Natomiast przy
powtorzeniach krotszych (2-3) bedzie to wydluzac zamiast skracac.

3. Można by to poprawic stosując też huffmana do licznika czyli biorąc pod uwage
czestość okreslonych powtorzen, ale tez bym nie liczyl ze osiagniesz 200 bajtow ;),
no chyba że miales na mysli 3k danych wejsciowych w bajtach, a nie juz w symbolach
2bitowych, wtedy faktycznie wejsciowych bedzie 3k/4 czyli  jakies 768 bajtow czego
i tak samym huffmanem do 200 nie zmniejszysz. Z RLE jakas tam szansa jest, ale
trzeba by chyba przeanalizowac dane i zastosowac wbudowane w procedurke
dekompresji na stale dlugosci. Np. jezeli najczestsze powtorzenia beda x5 x4 i x6
(przykladowo) i ich kody beda np. 00 01 10  no to masz tam jakis skrot typu 1-3 bitow
(np. 010 oznacza 0 - kod znaku 70%ego +10 x6 czyli zastepuje 000000 itd.).
Czyli cuś jak w deflate tylko w wersji uproszczonej i zastosowane tylko do tego 70%.
Oczywiscie nadal np. wystapienia pojedyncze czy x2 , x3 nawet jeżeli beda rzadziej
wystepowac beda wydluzac zamiast skracac, wiec to zalezy jak duzo ktorych powtorzen
bedzie, ale wlasnie dlatego huffman do licznika tez. Jeszcze analiza czy np. nie oplaci
sie np. powtorzen x8 przerabiac na x4 + x4 czy x9 na x4 + x5 itp. Tak czy siak
te < 256 bajtow to dosc mizernie widze chyba ze masz tak fantastyczne dane ;).
W każdym razie bym je przeanalizowal (te wszystkie dane) i od tego bym uzależnil
jaka metode sobie wybrac.

102

(12 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

Podsumowując metoda o którą pytasz to dzielenie rastra "split raster", w tej metodzie nie uzywasz rejestru $D40A jak ma to miejsce w przerwaniu DLI

Jeśli zostanie użyta w 50% ekranu to CPU w 50% ekranu będzie zmieniał kolory i na nic więcej nie będzie miał czasu.

Mozna tak, a można i z $D40A z przerwaniem DLI tylko w 1szej linii obszaru splitowanego.
Grunt, aby pierwsze połowa kodu wykonywanego w 1 linii, (do tych 50%) byla wycyklowana,
nastepna (po zmianie koloru) juz nie musi być, byle trwała krócej niż do końca linii po czym
STA $D40A i następna linia.

103

(46 odpowiedzi, napisanych Scena - 8bit)

drac030 napisał/a:

Nie, 68,2 kbps.

E, tyle to na pewno nie miał, przynajmniej ten mój. Może w późniejszym okresie
poprawili osiągi. Co prawda Tygrys mi od razu i tak tą stację przerobił, więc krótko
z Synchromesha korzystałem, ale na pewno nie miał więcej od ultraspeed'a :).

104

(46 odpowiedzi, napisanych Scena - 8bit)

Cóż, kiedyś napisałem muzyczkę na LDW2000 ;).
Najlepsza chyba stacja do atarki, bo miała - mało bo mało,
ale zawsze - miejsce na program usera no i komendy,
zeby to wysłac z Atari i uruchomić. Miała też pikacz
i wyświetlacz - ogólnie była super :). Można było własne
turbo zrobić spokojnie jak się komuś nudziło lepsze od
standardowego Synchromesha bo ten mial chyba 38kbit/s.
A co do hecnych programików to jeszcze zrobiłem wtedy
taki  do mrugania zerami jak oczkami na wyświetlaczu :P.
Eh jakbym przewidział, że jeszcze mi się Atarka powróci
to bym te dyskietki wszystkie pokopiował na PC, a tak...
Zresztą  jak już mi się emulatorek przeje to wyciągne
atarkę, stację i popróbuję poodzyskiwać co tam ocalało
choć wątpię, żeby tego było dużo.

105

(2 odpowiedzi, napisanych Sprawy atari.area)

Nie wiem :) kto pisał, ale zaczęło działać, dodałem 2 (słownie dwa) komentarze
do 2 artykułów, przy próbie dodania trzeciego juz znów nic. Chociaż linku
teraz juz nie psuje to nie pojawia się tekst - wyrzuciłem dla pewności
wsie znaki poza literami i nic. Sprawdze na jakims kolejnym art. może
tylko do tego jednego :) nie chce nic dodac ? Bo dziwne by to było, że do
dwóch dodało i przy 3cim się nagle zebździło.

(Edit) A jednak. Tylko do tego jednego artykułu nie mogę nic dodać.
Tytuł 'Historia sceny Atari' . No nic, może jest w ogóle zablokowane
dodawanie albo cuś, bo ktoś tam próbował dopisywać jakieś smieci
typu 'h..' itp. (z błędem zresztą bo się pisze ch.. :P) i możliwe, że
się admin jakiś wnerwił i zblokował.

Jak w temacie - w artykułach na stronie głównej.
Tak sobie z nudów poczytywałem różne art.
Miałem parę uwag, ale po wduszeniu skomentuj
wygląda jakby przeglądarka wysłała, ale nic się
nie pojawia to raz, dwa idzie do pustej strony
(koncowka "id=" i nic w id). Po powrocie do
artykułu komentarza nadal nie ma, a widze, że
jednak jakoś musi się dać, bo parę komentarzy
do każdego art. jest... Ktoś też miał problem
z próbami wysłania komentarza ?

107

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

jellonek napisał/a:

mi tam wystarcza przelaczanie na wyswietlanie typu unix timestamp, czyli liczby sekund od 1970 ;)
NIKT sie nie lapie o so chozi na poczatku, ale i ciezko sie przyzwyczaic ;)

A w ogóle się da przyzwyczaić ? Ja sobie nie wyobrażam dzielić modulo 86400,
żeby potem z tego wyczaić godzinę :). Jednak z tym zegarkiem da się problem
AM/PM jednak obejść o ile używają odpowiednich diod. Jak mogą świecić w
2 lub więcej kolorach (przeważnie zielony i czerwony) to po prostu np. AM
na zielono wsio a PM na czerwono i z głowy :).

108

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

Tak czy siak kicha :) na górze z tego co widzę są tylko 4 LEDy,
więc nie wiadomo (piątej nie ma) AM/PM ? A 0-23 na 4 też nie wyświetli.
Wbrew pozorom nie zawsze jest się pewnym pory dnia ;), zwłaszcza zimą
jak 17:30 po południu się nie różni prawie od 5:30 rano, a ty wstajesz
akurat na niesamowitym kacu :) ...

109

(43 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

rozdzielczosc 320x192 zabralaby 61440 bajtow, a gdzie miejsce na OS, na program uzytkownika ?
jak Ty bys zaprojektowal grafike, aby miala duzo kolorow i nie zajmowala duzo pamieci ?

Heh, bez nerw. Drążyłem, bo po tym co tam czytałem to myślałem, że jakieś bógwieco
powymyślane zostało od czasu jak sie z 8bitką pożegnałem, a wyszło, że standard :).
Oglądnąłem sobie te łobrazki - podkładanki duszków w konkretnych miejscach,
fajne, ale miałem juz apetyt na jakieś tricki nie z tej ziemi i 2^32 kolorów na raz :P.
A na poważnie to jasne, że 64k na ekran to by lekkie przegięcie było, ale tak
z 16 zamiast 8 to pewnie by nikt nie protestował :). A co do grafiki to mapy kolorów
jak w C64 nie są złym rozwiązaniem, tyle że ciężko mieć i to i to, a organizacja
grafiki w taki sposób jak to robi ANTIC jest jednak fajniejsza. Mimo wszystko
trybik po 2 bity na piksel w hiresie bylby fajny - co z tego że by 16k zżeral ;).

110

(43 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

trick polega na odpowiedniej kombinacji kolorow bitmapy i duchow, na zaleznosciach jakie z tego wynikaja, w duzym skrocie kolor tła jest taki sam jak kolor duchow a wiec duchy staja sie niewidoczne, zapalone piksle grafiki natomiast reaguja zmiana kolor

No wiem o czym mowa :) podkolorowywanie już było dawno przecież, ale
w przypadku obrazków nie masz kontroli nad tym jakie piksele są koło siebie,
a duszki maja szerokosc piksela=cyklowi koloru, natomiast grafika 0,5 cykla,
więc gdy na obrazku są koło siebie piksele w 2 kolorkach to wyglada to tak,
że ma być powiedzmy (w kolorkach), gdzie DD pozycja duszka:

012120
  DD

D- duszek, 0,1 i 2 pożądane kolory (0 - niewidoczne)
to jak byś duszka nie postawił tak jeden piksel wyjdzie poprawny,
a drugi przekłamany - albo oba podkolorowane, albo oba nie.
Na TV może tak i przejdzie to niezauwazone, ale np. przy większym
obszarze typu 121212121212 w linii robi sie albo plama
222222222 albo 1111111111 ewentyalnie 221122112211
co juz lepsze jest, ale 2 razy wiekszej szerokosci siatka niz
zamierzona.

111

(43 odpowiedzi, napisanych Programowanie - 8 bit)

Czegoś tu nie rozumiem...

tebe napisał/a:

tak 4 odcienie szarosci w HiRes uzyska sie tylko dzieki interlace-owi,
lub bez interlace ...

To w końcu jak ? Tylko dzieki interlace czy bez ?

tebe napisał/a:

kolor 709 ustawiamy na 0, kolor 710 na jakis inny <>0, kolor duchow i pociskow (PMG) musi byc =0, zmieniamy tylko ich jasnosc, efekt widac, w G2F wybierz PREVIEW=PMG a zobaczysz gdzie sa duchy umieszczone
co daje kolor 710=kolor PMG, to ze duchy nie wystaja poza krawedz grafiki, chcesz inny kolor, ustawiasz go w 710, taki sam ustawiasz dla PMG, zmieniasz tylko jasnosc PMG

To zakładając nawet interlace i powiedzmy jasnosci ducha i tla (pierwszy/drugi przebieg)
710=6/2 duch=10/14 to kombinacje dają około 6/14,6/2,2/10 i 10/14 co daje
nadal 4 kolorki. Zmian koloru w trakcie nie uznaję za rozwiązanie ogólne, bo się
nie da wycyklowac do 1 plamki, więc takie cuda to raczej do konkretnych obrazków
tylko można robić. Jak chce podłożyć duszki na większym obszarze przez poszerzenie
duszkow to też jest problem, bo piksel ducha poszerzony 4krotnie to wychodzi, że co
8 pikseli hi-resu moge zmienic czy tam jest duch w danym przebiegu czy tlo (710).
Dobre do tekstów w trybie 0 (różnokolorowe litery w linii), ale z grafiką mogą być kłopoty.
Jeszcze podkładanie  po 2 duchy i 2 pociski poszerzone i zmiana pozycji w czasie rastra
może być wykorzystana co daje 2 kolorki PMG i tlo do kombinacji, ale też pozostaje
problem poszerzonych duszków.
A nawet bez poszerzania to tez bedzie wylazic czasem za grafike i tylko niedoskonałości
TV to mogą maskować (szerokosc pixela ducha). Dawno z Atarką się nie bawiłem,
więc nie wiem nawet co to G2F ;). Czy ten programik jest w stanie ogólne obrazki
obrabiać i np. stwierdzić że daną grafikę w N kolorkach się da albo nie w tym trybie
przedstawić ?

112

(20 odpowiedzi, napisanych Programowanie - 8 bit)

Monsoft napisał/a:

Mozna albo go uzyc do zrobienia "zajebistego dema", jak sie nie ma czasu a chce sie zostac koderem (HA!!!)
Albo zrobic sobie skrolla zgrac w com'a i wrzucic do disassembler'a. Moim zdaniem to tez by przynioslo efekt.

A według mnie lepiej jednak sobie postudiować co czym się je - potem
naprawdę można więcej zdziałać. Polecam De Re Atari, Atari Intern
(Zientary chyba) no i Asembler 6502 Ruszczyca oczywiście, który
mimo troszku błędów (przynajmniej w tym wydaniu co ja mam) jest
najfajniejszą książką o asemblerze, natomiast De Re Atari i Intern
dość dokładnie opisują sprzet (GTIA POKEY PIA i ANTIC) oraz
system operacyjny. Tak, że mając te 3 książki raczej da się już
zrobić wszystko (albo prawie).

113

(30 odpowiedzi, napisanych Programowanie - 8 bit)

piotrv napisał/a:
Sc0rpi0 napisał/a:

Nie wiem jak w C64, ale w Atarce to BASIC wykorzystuje tryb DCB non stop praktycznie.

Jesli chodzi o SED, to jest w Atari Basic słownie "raz".
W systemie (Atari OS) występuje tylko w pakiecie matematycznym - jak to już wspomniał drac030.

Wniosek: jeśli w BASICu cokolwiek liczysz (dzielenie, konwersje int-float), to masz spore szanse na korzystanie z "DCB".

Co do SED to się może i zgadza, że jest raz w obszarze BASICA, nie sprawdzałem
nawet tego nigdy, bo w matematycznej jest :). Wystarczy popatrzeć ile tam się
wywołuje skoków pod adresy z zakresu D800-DFFF. W BASICu niestety
praktycznie wszystko jest zamieszane w BCD, żadnych konwersji nie trza,
ani nic liczyć nawet. Wystarczy choćby głupie USR wywołać co niby nie powinno
DCB w ogóle ruszać, a raczej być związane tylko z maszynowym... a jednak.
Wystarczy się przyjrzeć jak jest zwracany wynik z USR i już mamy flage D=1 :).
A teraz przerwanko w trakcie i jak ni ma na poczatku CLD to się robi w przerwanku
kiszka ;). Na szczeście w Atarce jest to CLD w systemie na początku obsługi
przerwania, bo strach pomyśleć jakby zapomnieli. Ktoś tam pisał, że nie potrzeba
przy robieniu własnych wektorów przerwan CLD. Niby i racja we własnym programie,
bo wielozadaniowości nie ma niby, ale i tak... teoretyczna sytuacja: program
który korzysta z handlera urządzenia powiedzmy Z: . Niby twój program, ale handler
może być czyjś i np. w środku korzysta z SED (wiem że mało prawdopodobne, ale możliwe)
i coś tam sobie liczy. I teraz podczas obsługi urządzenia przyłazi przerwanie i idzie
przez ten zmieniony wektor spod FFFX bez CLD - i sru. No i się przydała jednak ta
jedna instrukcja ;), a marnotrawstwo cykli i pamięci raczej nieduże ;). Po co ten
1 bajt oszczędzić, a potem cuś się bedzie paskudzić.

114

(30 odpowiedzi, napisanych Programowanie - 8 bit)

jad napisał/a:

kiedy sie przelacza 6502 w tryb dziesietny...

w C64 nie ma 6502 :P o ile pamiętam tylko jakiś zamiennik bodajże 6510 ?
A może to w stacji commodorowskiej było ? Za dawno to było, żebym pamiętał,
zwłaszcza, że z C64 to dużo mniej się bawiłem niż z Atari, ale wydaje mi się
że tam cuś inszego było w bebechach.

jad napisał/a:

ja widzialem tylko dwie procedury: jedna mnozyla liczbe 16-bitowa przez liczbe 8-bitowa, druga sluzyla do konwersji wartosci bajtu na jego hexadecymalny odpowiednik jako tekst. obie nie wykorzystywane przez kernel. moze w interpreterze bejzika sa takie miejsca,

Nie wiem jak w C64, ale w Atarce to BASIC wykorzystuje tryb DCB non stop praktycznie.

jad napisał/a:

kiedys mi sie zdarzylo na komarze ustawic znacznik D w procedurze przerwania i go potem nie skasowalem. oj dzialo sie dzialo ;-)

Heh, chyba, że w samym przerwaniu, albo nie wracałeś przez RTI - inaczej nie widzę,
jak mogłoby się cokolwiek dziać po powrocie :).

jad napisał/a:

9_93_joytrans.html

uuuu, późnawo -  to ja z kumplem już chyba
w jakimś 89-90 roku spaliłem porty Comciowi ;), bo ta franca miała zero zabezpieczeń
na portach i głownie pierwsze co się tam paliło to porty. Ale kabelek i transmisja
ładnie działały dopóki przy ntym z kolei przepięciu kabelków (na żywca oczywiście,
bo kto by tam wyłączał :P) nie poszedł port w C64 i zabawa się skończyła, jako
że to na wczasach było i cięzko było w miejscowej melinie zamiast picia
dostać lutownicę :D .

115

(39 odpowiedzi, napisanych Programowanie - 8 bit)

Lekki offtopic, ale musze się zapytać :)

Pin napisał/a:

jeśli chodzi o kursy - "piszemy demo"; to kolega Tomek Bielak ma się dobrze, lecz niestety z braku czasu Atarka mu zalega w szafie...

Eeee, że tak zapytam, chodzi o "Spekola" :) (tego z "Elbudu") bo widzę, że Kraków na linii :) ? Dalej się bawi Atari ? Ja właśnie dopiero co trafiłem na ten serwis o Atarif przypadkowo zupełnie, grzebiąc w sieci i tak z ciekawości postanowiłem sprawdzić czy jacyś znajomi dawni tu są.