876

(6 odpowiedzi, napisanych Programowanie - 8 bit)

No to potrzebuję wsparcia, bo nie wiem, co prawidłowo powinna zwracać procedura Get[barwa]Value(cl) w liniach 10-12. Po przeniesieniu do flasha mam:

function rgbRead (cl:String):Number {
    //
    var rgbnumber:String = parseInt (((cl.indexOf ("#") != -1) ? cl.split ("#")[1] : cl.split ("0x")[1]), 16).toString (16);
    var l, d, c, ma, mi, r2, g2, b2:Number;
    var h, lu1, lu2, lu3:Number;
    var r, g, b:Number;
    //
    rgbnumber = ((rgbnumber.length < 6) ? ("000000").substr (0, 6 - rgbnumber.length) : "") + rgbnumber;
    //
    ma = 0;
    mi = 0;
    h = 0;
    c = 0;
    //
    r = parseInt (rgbnumber.substr (0, 2), 16);
    g = parseInt (rgbnumber.substr (2, 2), 16);
    b = parseInt (rgbnumber.substr (4, 2), 16);
    //
    trace ([rgbnumber, r.toString(16), g.toString(16), b.toString(16)]);
    if ((r == g) && (g == b))
    {
        trace ("gs?");
        return r;
    }
    if ((r >= g) && (r >= b))
    {
        ma = r;
    }
    if ((r <= g) && (r <= b))
    {
        mi = r;
    }
    if ((g >= r) && (g >= b))
    {
        ma = g;
    }
    if ((g <= r) && (g <= b))
    {
        mi = g;
    }
    if ((b >= g) && (b >= r))
    {
        ma = b;
    }
    if ((b <= g) && (b <= r))
    {
        mi = b;
    }
    //    
    d = ma - mi;
    if (d == 1)
    {
        trace ("a?");
        return mi;
    }
    //     
    r2 = r * 100;
    g2 = g * 100;
    b2 = b * 100;
    if (r == ma)
    {
        h = (g2 - b2) / d;
    }
    else if (g == ma)
    {
        h = 200 + ((b2 - r2) / d);
    }
    else if (b == ma)
    {
        h = 400 + ((r2 - g2) / d);
    }
    h = h * 0.6;
    if (h < 0)
    {
        h = h + 360;
    }
    lu1 = r * 0.297;
    lu2 = g * 0.586;
    lu3 = b * 0.109;
    l = int (lu1 + lu2 + lu3);
    //
    var val = int (h);
    trace (val);
    //
    if (val < 5)
    {
        c = 2;
    }
    else if (val < 21)
    {
        c = 1;
    }
    else if (val < 32)
    {
        c = 15;
    }
    else if (val < 44)
    {
        c = 14;
    }
    else if (val < 64)
    {
        c = 13;
    }
    else if (val < 85)
    {
        c = 12;
    }
    else if (val < 148)
    {
        c = 11;
    }
    else if (val < 172)
    {
        c = 10;
    }
    else if (val < 192)
    {
        c = 9;
    }
    else if (val < 210)
    {
        c = 8;
    }
    else if (val < 262)
    {
        c = 7;
    }
    else if (val < 277)
    {
        c = 6;
    }
    else if (val < 298)
    {
        c = 5;
    }
    else if (val < 319)
    {
        c = 4;
    }
    else if (val < 335)
    {
        c = 3;
    }
    else if (val < 360)
    {
        c = 2;
    }
    trace ([c,l]);
    return (c << 4) + l;
}
trace (rgbRead ("0xefffff"));

i w output dostaję wynik większy od 255:

efffff,ef,ff,ff
180
9,248
392

Czy to jest prawidłowość (przekroczenie wartości zakresu ze względu na złe odwzorowanie R), czy też ja znowu coś pomieszałem ? (ostatnia linia to wynik działania, poprzednie to wynik trace'ów

//EDIT: po godzinie googlania dochodzę do wniosku, że parseInt(rgbvalue.substr(pozycja, długość),16) zwraca dokładnie to, co ma zwrócić, a więc nie tu jest problem

877

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

@Amun-Ra: sprawdź się na liście w pierwszym poście i wyślij mi maila z Twoimi danymi - jest to Twój pierwszy post na tym forum, więc musimy mieć pewność, że nie jest to chwilowy kaprys (jak potem zrezygnujesz, to przyjedziemy do Ciebie i... to był joke ;) ) - koszt końcowy jeszcze nie był policzony, ale może sięgnąć do/ponad 50 złotych + wysyłka (pic + płytka to już 20 zeta )

@Pajero: jestem za wersją drugą: ten sam rozstaw nóżek, za to oscylator wewnętrzny - to jest plus, no i ten dodatkowy tydzień może się rozrosnąć do dwóch, a dodatkowy miesiąc-dwa (wersja 3) do czterech-sześciu - a to już trochę zbyt dużo czasu.

Czy jest na Forum możliwość zakładania ankiet ? Jeżeli nie, to jak nie macie nic przeciwko temu, taką ankietę mogę założyć u siebie na blogu (niestety, anonimową, więc na "doWCIPmisiów" nic nie poradzę) - głosowanie do wtorku włącznie (myślę, że każdy z zainteresowanych ma już ustawione subskrybowanie wątku ?) Wtedy by było prościej i przejrzyściej, a nie kwestia przeczesywanie parudziesięciu postów, bo znając życie wywiąże się też dyskusja "czemu portki (v2) nie są lepsze od kiecki(v3) i dlaczego w samych majtkach nie można chodzić("mikro"AKI)"

878

(6 odpowiedzi, napisanych Programowanie - 8 bit)

dzięki Tebe, jeszcze tylko się chciałem upewnić: shl 4 to przesunięcie w lewo o 4 bity, czyli <<4, a shr w prawo czyli >>4 ? a trunc upraszcza wynik do int-a ?

879

(36 odpowiedzi, napisanych Programowanie - 8 bit)

dzięki Gorgoth, zobaczę, jak mi się to uda użyć :)

//EDIT: no i sprawę multiplexingu mamy z głowy, bo co więcej dodać ? :)

880

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

Co do następnej wersji softu: jakby można było wprowadzić te modyfikacje pod kijlejołta emulatora, a to, co napisałem, było niezrozumiałe, to piszcie - napiszę jeszcze raz :D

881

(6 odpowiedzi, napisanych Programowanie - 8 bit)

Witam, jest jakiś odpowiednik (wzór przekształcenia) barwy RGB na kolor atarynki ?

882

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

O, widzę Larek, że chyba się szeroko do Ciebie uśmiechnę :D

883

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

Z tego, co czytałem, to na razie można by wsadzić do nowego pica stary program, a potem tylko upgrade'ować go.

PS. co do układu z a800win - proponowałbym dorbne zmiany: F1-HELP F2-START F3-SELECT F4-OPTION F5-RESET (wyrzucenie HELP spod PgDn), a dopiero użyte z controlem jako atarowskie F1, F2, F3, F4 no i wytrzaśnięcie spod HOME tego wk****ego kasowania ekranu, albo przynajmniej przerzucenie go pod użycie z shiftem - ponadto Home, End, PgUp i PgDn (bez shiftu) mogły by działać jak użycie F1-F4 z shiftem:
{klawisz}: {odpowiednik atarowski}
PgUp: SHIFT-F1 skok na górę ekranu
End: SHIFT-F2 skok na koniec linii
Home: SHIFT-F3 skok na początek linii
PgDn: SHIFT-F4 skok na dół ekranu

884

(6,376 odpowiedzi, napisanych Kolekcjonowanie)

http://allegro.pl/item389883783_atari_2 … z_sam.html <- z twardym dyskiem, a co! :D

885

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

eee no to moja jest hamerykańska - i z boxem :P

//EDIT: Larek - to ta myszka jest na zdjęciach u Kaza ? No i gratulacje tak udanego zewnętrznego tuningu atarynki (bo jeszcze nie zdążyłem pogratulować) :)

886

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

Być może na giełdzie w Związkach albo jeszcze w Baildonie - w codziennym życiu to raczej nie, bo... mieszkasz po drugiej stronie granicy ;-)

887

(36 odpowiedzi, napisanych Programowanie - 8 bit)

To jest już zupełnie wystarczające! Gorgoth, byłbyś w stanie coś takiego napisać tak, aby dało się połączyć z programem w basicu ? Pod kątem tego zagadnienia ?

888

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

Tak, jest nadal do wzięcia, choć jeszcze parę dni i się chyba całkiem rozmyślę, bo właśnie programik, który piszę, optymalizuję pod kątem jej użycia.

889

(41 odpowiedzi, napisanych Sprawy atari.area)

<30 emularz
<50 konsolowiec
<100 kartridżowiec
<250 kaseciak
<500 turbokasetowiec
<800 flopowiec
<1000 turboflopowiec
<1300 sioPC-kowiec
<1800 sioSD-owiec
<2200 sioIDEowiec
<3000 FREDDIE
<4000 PIA
<5000 POKEY
<6500 GTIA
<8000 6502
<10000 ANTIC
<100000 65C816

ranga dla admina: SUPERCHARGER

:)

)*^v^*( o ciup... ale wstyd... działa

wersja 3cia (przepakowana z data na atascii, działająca)

891

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

uaktualnienie wersji 1.03 (plik instrukcji)

10 DATA 104,104,104,141,59,6,104,104,141,60,6,104,104,141,67,6,104,104,133,203,104,104,133,204
20 DATA 104,104,141,77,6,104,104,133,205,104,104,170,189,89,6,141,61,6,169,203,224,4,208,2
30 DATA 169,255,141,62,6,24,162,0,160,0,189,255,255,17,203,145,203,138,105,0,170,144,4,24
40 TRAP 32007:DATA 238,60,6,152,105,0,168,144,3,24,230,204,198,205,208,226,96,36,49,17,81,73
50 READ A:POKE 1536+I,A:I=I+1:GOTO 50
...
32007 X=USR(1536,64,156,1,192,156,1,10,0)

wersja druga... i działa po odwróceniu bajtów adresu

893

(6 odpowiedzi, napisanych Programowanie - 8 bit)

Dzięki za rozbudowaną odpowiedź - no to wypisz-wymaluj pozostaje mi ostatnie rozwiązanie, jak "pikawka" z GTIA. Potrzebuję 10 kolorów statycznych (5 głównych i ich półcienie), a dzięki machaniu z DLI jak widzę będę mógł użyć swobodnie sprite'ów do obiektów ruchomych (potrzebuję aże dwa, czyli 4 sprite'y będą w sam raz)

nie nie - nie liczę tego dla celów aplikacji, tylko dla celów testu - i efekt przesunięcia basicowym POKE, i z tej procedurki powinien być tak samo widoczny, a efektów jak nie było widocznych, tak nie ma :/

Próbuję coś robić w kwestii przypomnienia sobie, jak się pisało w basic-u... No i padło na GR.12.

Z tym, że problem jest taki, że potrzebuję nie 5, a 10 kolorów - jak to w najprostszy sposób zrobić ?

Po tym co, przeczytałem w atariki i biorąc pod uwagę próby logicznego wyobrażenia sobie tego, wpadłem na to, że najlepiej by użyć duszków, ponieważ w tej rozdzielczości szerokość 1 px jest równa 1 cyklowi koloru, a więc wypisz-wymaluj 1:1 dla wykorzystania duszków!

Z tym, że jest problem... szerokość planszy, jaką potrzebuję to 128px, a duszki dają max 40px, w podwójnej szerokości 80... "milimetrów" braknie... (poczwórna odpada)

Czytałem o tym, jak idzie wykorzystywać DLI do skoku pod własną procedurę, czytełem też o tym, jak podkolorowywany jest obraz w G2F... czyli dało by się to zrobić - z tym, że o ile zmienianie rozdzielczości linii to dla mnie nie problem, to wywołanie procedury, która będzie wykonywać przerzucanie pozycji (i obszaru pamięci) duszków jest już makabrą :(

Ale naprowadźcie mnie, czy idę w dobrym kierunku: gdyby utworzyć kopię obrazu w postaci słupków (jak ta procedurka będzie już działać, to nie będzie z przerzucaniem tego najmniejszego problemu) zgodnie z przesunięciem początku każdej kolumny co 1 stronę pamięci, wówczas dodatkowy pięciokilowy blok pamięci powinien wystarczyć, by za pomocą duszków uzyskać dodatkowe 5 kolorów ?

Czy też jest jakiś "prostszy" sposób ? Nie wiem - w postaci dwóch kopii displaylist, czy zmianie wartości rejestru koloru w danym pikselu podczas tworzenia ekranu - coś w tym rodzaju ?

896

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

Dzięki za info. Ech, szkoda, że Cię nie mieliśmy, jak Pajero zaczynał męczyć się z AKI :( - myślę, że w najbliższym czasie skontaktuje się się z Tobą to dogadacie sprawę "między wami konstruktorami".

897

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

Taka uwaga dla rozszerzających XEGSa o AKI:

XAKI 1.03 napisał/a:

I jeszcze uwaga dla posidaczy XE GAME SYSTEm. Otóż aki może nie działać gdy odłączy się klawiaturę
od atari. Aby wszystko było w porządku należy podłączyć rezystory podciągające napięcie  za diodami
dla sygnałów MTXR1 i MTXR2. Po tej modyfikacji można schować klawiturę Atarowską do szafy:)

                     5V
                   |
 PIC              _|_
                  |  | 4-10 kOhm
                  |__|
  10 RB4 ____|/|___|_____ MTXR2
  lub        |\|          lub
  11 RB5                  MTXR1

więcej info w plikach od DarkDK

898

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

Ruszamy z AKI dalej! Pajero, letterek poszedł :)

//EDIT:

Taka uwaga dla rozszerzających XEGSa o AKI:

XAKI 1.03 napisał/a:

I jeszcze uwaga dla posidaczy XE GAME SYSTEm. Otóż aki może nie działać gdy odłączy się klawiaturę
od atari. Aby wszystko było w porządku należy podłączyć rezystory podciągające napięcie  za diodami
dla sygnałów MTXR1 i MTXR2. Po tej modyfikacji można schować klawiturę Atarowską do szafy:)

                     5V
                   |
 PIC              _|_
                  |  | 4-10 kOhm
                  |__|
  10 RB4 ____|/|___|_____ MTXR2
  lub        |\|          lub
  11 RB5                  MTXR1

więcej info w plikach od DarkDK

^no i dubel jak nie wiem, ale info ważne, a wątki... hmm... pod kątem wyszukiwania przez "klawiatura XEGS AKI" może się i tam obok także przydać

899

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

Pliki od DarkDK: 1.03 full, 1.04 bin*
* =

DarkDK napisał/a:

..trochę nowszą 1.04 w której nie pamiętam co już robiłem.

Dzięki Dark! Jesteśmy conajmniej 26kroć wdzięczni!!! :)

//EDIT: róbcie kopie i przenieście we wlaściwsze miejsce

900

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

myślę, że na pewno są na liście osoby, które na 99,99% wezmą AKI niezależnie od ceny - no i z chęcią wpłacą Ci zaliczkę jak będzie taka potrzeba...