C64Power Forum

Software => Programowanie => Wątek zaczęty przez: digger w 08 Lutego 2012, 19:53

Tytuł: MUCSU
Wiadomość wysłana przez: digger w 08 Lutego 2012, 19:53
jak dziala to MUCSU? tak w jednej linijce.
_________________
4 x C64 Breadbox \'83, C64C, C16 \'84
DualSID, 1541 Ultimate, C64SD

http://www.flickr.com/photos/digger-c64
http://play.blog2t.net
Tytuł: MUCSU
Wiadomość wysłana przez: c---n w 08 Lutego 2012, 21:42
@dggr
zajebiscie! \"Very
_________________
6xC64, SX64, 3xC+4, C128, 2xC128d, C16,  VIC-20, C64 DTV v1, Amiga 1200/060, Amiga 500, Amiga CDTV
Tytuł: MUCSU
Wiadomość wysłana przez: isildur__ w 09 Lutego 2012, 11:29
                   
carrion napisal:
@dggr
zajebiscie! \"Very


Dokladnie, zajebiscie. Niestety nie ma do tego trybu edytora i jest sie zdanym na laske konwertera. Mimo, ze dziecko bylo perfekcyjnie narysowane, to po konwersji zawsze jakies shity sie pojawialy (na rekach zwlaszcza). Niekonczace sie poprawki poprawek.
Tytuł: MUCSU
Wiadomość wysłana przez: bimber__ w 09 Lutego 2012, 11:38
                   
isildur napisal:
Niestety nie ma do tego trybu edytora


wciaz mam cicha nadzieje, ze ktos kiedys...
Tytuł: MUCSU
Wiadomość wysłana przez: digger w 09 Lutego 2012, 20:08
Moge napisac taki modul do http://c64.blog2t.net/slixed/ tylko wyjasnijcie zasady/limity.
_________________
4 x C64 Breadbox \'83, C64C, C16 \'84
DualSID, 1541 Ultimate, C64SD

http://www.flickr.com/photos/digger-c64
http://play.blog2t.net
Tytuł: MUCSU
Wiadomość wysłana przez: Skull w 10 Lutego 2012, 07:47
Niezle!
MUCSU (czy tam MUSCU), to warstwa ze sprites poszerzonych w x i w multicolorze, na calym ekranie, na niej standardowy tryb hires.
Czyli jest to warstwa w poziomie: 7 kolumn sprites (wg hiresowego pixla to 7*48 = 336, czyli nawet wiecej niz ma ekran) i w pionie 10 rzedow
Daje to 70 ksztaltow + bitmapa w hiresie.
W podstawowej wersji tego trybu(jednak najbardziej funkconalnej), kolory sprites w trakcie wyswietlania nie ulegaja zmianie - czyli sa przyporzadkowane przy inicjacji, wtedy na kazda kolumne przypada jeden kolor wspolny(d027..), i na calosci 2 multi (d025,d026). Reszta jak w hiresie.
No i trzeba pamietac ze piksel w trybie extendedX + multicolor ma 4 px w stosunku do hiresu.

Chodzi o dobor odpowiedniej kombinacji, na pewno nie jest to latwe, ale
przyda sie nawet edytor do samej korekty po konwersji.

Moge dac zrodlowke jak to sie wyslwietla.
_________________
Bo pecet to zwykly banan...
Tytuł: MUCSU
Wiadomość wysłana przez: isildur__ w 10 Lutego 2012, 00:00
                   
Digger napisal:
Moge napisac taki modul do http://c64.blog2t.net/slixed/ tylko wyjasnijcie zasady/limity.


No swietnie, ze w koncu cos sie rusza w toolsach do grafy na c64!
Digger, jakie sa szanse na Twoj Slixed w wersji stacjonarnej (nie online)?
Tytuł: MUCSU
Wiadomość wysłana przez: brush__ w 10 Lutego 2012, 16:45
@Digger: Daloby sie to do AIR\'a przerzucic?
Tytuł: MUCSU
Wiadomość wysłana przez: kmeg__ w 10 Lutego 2012, 17:14
                   
isildur napisal:

Digger, jakie sa szanse na Twoj Slixed w wersji stacjonarnej (nie online)?


Nie moje technologie ale:
1. Pobrac: http://www.adobe.com/support/flashplayer/downloads.html (flash player projector)
2. Pobrac: http://c64.blog2t.net/slixed/editor.swf

Uruchomic 1 i wczytac 2...

Ale AIR bedzie zdecydowanie lepszy jak sie da...

_________________
www.albioncrew.org
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 10 Lutego 2012, 17:43
ten tryb bym mogl dosc latwo dodac do edytora w IMOS, ktory w tej chwili edytuje dowolnie polozone na ekranie sprajty (czyli w sumie musial bym tylko dodac x-extend + edycje hires), ale tak dawno temu IMOS pisalem, ze juz zapomnialem jak sie programuje \"Wink\" \"Razz\" Zreszta tam chyba nawet sie dalo wczytac obrazek jako tlo przy edycji sprajtow, wiec prawie wszystko gotowe.. (da sie wczytac np. obrazek w multi i edytowac nalozona na niego dowolnie skomponowana matryce ze sprajtow)
_________________
\"A ile zrobisz pompek ?\" (c) 2o11 eLban
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 10 Lutego 2012, 20:02
jakas sciema jest z ta modyfikacja postow - 2 godziny po napisaniu nie da sie zmienic, mimo ze nikt nie odpowiedzial, a chce tylko dodac dodatkowe info.

przechodzac do sedna sprawy: czy ktos moglby zamiescic niespakowany plik z obrazkiem w tym trybie ze sprajtami + rozpiske co gdzie mniej wiecej w nim jest i czy te sprajty sa wyswietlane z jednakowym Y w linii czy kazdy przesuniety w dol o iles pixeli ? obejrze i moze napisze edytor.
_________________
\"A ile zrobisz pompek ?\" (c) 2o11 eLban
Tytuł: MUCSU
Wiadomość wysłana przez: isildur__ w 10 Lutego 2012, 21:42
                   
nes napisal:

przechodzac do sedna sprawy: czy ktos moglby zamiescic niespakowany plik z obrazkiem w tym trybie ze sprajtami + rozpiske co gdzie mniej wiecej w nim jest i czy te sprajty sa wyswietlane z jednakowym Y w linii czy kazdy przesuniety w dol o iles pixeli ? obejrze i moze napisze edytor.


Sure \"Smile\" w zipie masz PRG i RAW z konwertera.
Dziecko tak powinno wygladac, ale konwerter skaszanil to i owo.
Zwroccie uwage, ze w pierwszej fazie Skull wykorzystal dziecko z czescia multi, a nastepnie przepisal fragment na Hires! Oczywiscie w tym trybie Mucsu/Nufli miesci sie jeden obrazek w pamieci, nie liczac muzyki i kodu!
To jest koderski kunszt, ale takie rzeczy nie sa oczywiscie zauwazane...
   

   

                                                                                    
child.gif
 :Opis:                                                
      
 :Rozmiar: :8.33 KB
 :Wyswietlen: :Plik sciagnieto 158 raz(y)

\"child.gif\"

   

   

                                                                                                
child.zip
 :Opis:                                                
      
\"\"
Pobierz
 :Nazwa zalacznika: :child.zip
 :Rozmiar: :21.8 KB
 :Pobran: :Plik sciagnieto 7 raz(y)
   

Tytuł: MUCSU
Wiadomość wysłana przez: Kisiel w 10 Lutego 2012, 23:34
tak czy siak mialem odpowiedziec wegiemu po zlookaniu:
Wiec demo wlasnie oberzalem, muza jakbym mial rozstrzelac to juz ujdzie. Podrasowana trzyma sie tresci i to chyba zasluga Randala.
Efekty koderskie: faktycznie ze na emulcu efekty c128 sa wolne, da sie to obejrzec nie robcie tego wiecej ...
Pan patrzacy na wektorki.... o kurde to jest najbardziej zajebisty part do porownania dla majacych dopalacze... Wegi dales czadu \"Smile\"
Reasumujac, paru dobrych koderow, muzyk z jajami i sie trzymacie w TOP 10.
_________________
\"... taka choroba. Zreszta obrazki, ktore robisz tez cos o tym mowia.
Proponuje odwrocic proporcje, zamiast byc 100% scenowym trollem, skup sie bardziej na poprawieniu warsztatu...\"
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 11 Lutego 2012, 11:10
isildur - a rozpiske gdzie co jest w pamieci bym mogl poprosic ? na C64 odpalil bym sobie .prg, dal freeze w Action\'ie i sprawdzil w procedurze wyswietajacej, a na PC przerzucac .prg do .d64 zeby zamountowac po wczytaniu Actiona a potem zgadywac gdzie jest freeze..  \"Confused\"
_________________
\"A ile zrobisz pompek ?\" (c) 2o11 eLban
Tytuł: MUCSU
Wiadomość wysłana przez: isildur__ w 11 Lutego 2012, 11:48
Niestety nie mam takiej wiedzy, Skull da Ci rozpiske bez problemu, napisz do niego.
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 11 Lutego 2012, 19:32
rozkminilem troche wyswietlarke (leniwy jestem, nie chcialo mi sie emaila do skull\'a pisac \"Wink\" ):

obrazek jest od $4000
$4000 - $43f8 - kolory hires1
$4400 - $47f8 - kolory hires1

- wyglada na to, ze ekrany sa przelaczane przemiennie co linie

$4800 - $5C00 - sprajty

$5C00 - ???    - zmienne kolory dla $D025 (co ile one sa zmieniane, co linie ?)
$5D00 - ???    - zmienne kolory dla $D026 (co ile one sa zmieniane, co linie ?)

$5E00 - $5E06 - kolory dla $D027-D02D

$6000 - $7F40 - bitmapa

Sprajty sa ustawione rowno w poziomie, bez przesuniec Y
Tytuł: MUCSU
Wiadomość wysłana przez: Skull w 11 Lutego 2012, 20:16
                   
Kod:

IRQ_ENTER::
 : :  : :  :pha
 :  : :  :txa
 :  : :  :pha
 :  : :  :tya
 :  : :  :pha
 :  : :  :sec
base:: :  :lda #$32
 :  : :  :sbc $dc04
 :  : :  :sta *+4
 :  : :  :bpl *
 :  : :  :lda #$a9
 :  : :  :lda #$a9
 :  : :  :lda #$a9
 :  : :  :lda $ea
//--------------------------------------------------
//Stable :  : :  :
.var IrqCounter = *+1
 :  : :  :ldx #$09 :  :
 :  : :  :cpx #4 :  ://badline row
 :  : :  :bne !+
 :  : :  :jsr _rts :  ://12 cycles waste
 :  : :  :jsr _rts :  :
 :  : :  :cmp (:$00,x): :  :
 :  : :  :cmp $00 :  :
!:: :  : :  :lda #$10
 :  : :  :eor $d018
 :  : :  :sta $d018  :  ://shift sprite shapes (:and colormap):
 :  : :  :lda #0
 :  : :  :sta $d030

.const d = 7 :  : :  ://difference between line with sprites
 :  : :  :ldy #$32-d
 :  : :  :dex
 :  : :  :bpl !+
 :  : :  ://jsr music_play
 :  : :  :ldy #$32 :  ://line without sprites
 :  : :  :ldx #9
!:: :  : :  :stx IrqCounter
 :  : :  :sty base+1 :  : :  :
 :  : :  :lda D012_tab,x
 :  : :  :sta $d012
 :  : :  :ldy spointers_tab,x
 :  : :  :tya
 :  : :  :and #8
 :  : :  :bne !+
 :  : :  :
.for(:var i=0:i<7:i++): {:
 :  : :  :sty p_ColorMap+$03f8+i
 :  : :  :iny
 :  : :  :}:
 :  : :  :bne !next+
!::
.for(:var i=0:i<7:i++): {:
 :  : :  :sty p_ColorMap2+$03f8+i
 :  : :  :iny
 :  : :  :}:
!next:: :  : :  : :  : :  : :  : :  :
 :  : :  :lda Row_Y_tab,x
.for(:var i=0:i<7:i++): :  : :  :
 :  : :  :sta $d001+i*2
 :  : :  :
IRQ_EXIT:: :  :inc $d019
 :  : :  :pla
 :  : :  :tay
 :  : :  :pla
 :  : :  :tax
 :  : :  :pla
_RTI:: :  :rti :  :
//--------------------------------------------------

D012_tab::
 :  :.by $31+9*21, $31+8*21, $31+7*21, $31+6*21
 :  :.by $30+5*21, $31+4*21, $31+3*21
 :  :.by : $30+2*21, $31+1*21, $31
Row_Y_tab::
 :  :.fill 10,[:9-i]:*21+$32
spointers_tab::
 :  :.fill 10,[:9-i]:*8+$20  :  :




co do czesci z dzieckiem: zmiana obrazow nie ma zadnych kombinacji - w pamieci sa dwa obrazy mucsu, ktore sa wymieniane (mozna nawet zmienic to dziecko na Carriona \"Train\"), warstwa sprites jest na calym ekranie - po prostu nie wszedzie \"wykorzystana\".

@nes to co analizujesz to jest juz druga wersja MUCSU- ze zmiana d025 i d026, co linie - oczywiscie w tym wypadku to juz marny tryb, bo proca zajmuje tyle co NUFLI (i w tym wypadku NUFLI  ma wieksze mozliwosci,tyle  ze pamieci zajmuje mniej.
Tu kolory ustalasz raz przy inicjacji, a potem tylko przerwanie przy zmianie ksztaltow dla sprites i przesuniecie w dol: czyli 10 razy w trakcie wyswietlania ekranu.
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 11 Lutego 2012, 20:58
skull - ok, ale jak pisze edytor to w sumie moge napisac na ten z przeplotem i zrobic opcje wylaczania przeplotu..
czyli w tym co jest zamieszczony obrazek, to nie ma ani zmiany ekranow, ani zmiany $d025/$d026 co linie ? (w wyswietlarce w pliku .prg jest..)

ps. ja to na PC pisze.. zeby nie bylo watpliwosci..
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 12 Lutego 2012, 01:39
ok.. po calym dniu dupc..nia sie z pecetowym pojeciem programowania, i czytaniem na forach, ze dopoki do zmiennej nie dopisze sie +\"\" to bedzie integerem a nie char\'em, i tym podobnych fantastycznych zagadnieniach, udalo mi sie w koncu wyswietlic cos co przypomina obrazek.

Ale tylko przypomina. Stad pytanie - czy na pewno dobrze rozumiem, ze to jest hires w ktorym znak 8x8 pixeli moze miec 1 kolor + wspolne tlo, czy to jest hires z osobnym kolorem tla dla kazdego znaku..?
jesli to drugie, to nie wiedzialem, ze da sie pod spod sprajty podlozyc
a jesli nie, to musze troche odpoczac, i sie zastanowic dlaczego to nadal nie wyglada tak jak powinno..



orginal:



pozdro. uff.

ps. tak piszecie o zajmowaniu pamieci, a ze co 8my sprajt jest pusty w tym trybie to juz taki drobny szczegol.. tez pol godziny dochodzenia mialem dlaczego sa rozjechane \"Razz\"
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 12 Lutego 2012, 14:13
ok, rozkminilem..

musze przyznac, ze do tej pory nie wiedzialem, ze w hires da sie ustawic sprajty tak ze maja priorytet nad kolorem tla znaku, a pod bitmapa  \"Embarassed\"
Tytuł: MUCSU
Wiadomość wysłana przez: Skull w 14 Lutego 2012, 07:31
dobrze ze to juz obczailes, sorry ale nie zawsze czlowiek ma szanse odpowiedziec.

Dwie mapy kolorow (dwie kopie), sa tylko dla \"przelacznika\" ksztaltow sprites w $d018,
w ten sposob mozna przelaczyc wszystkie sprites \"na raz\" nawet w badline, bo przy wlaczonych wszystkich 8-miu, zostaje tam tylko 4 cykle na to - czyli akurat.
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 14 Lutego 2012, 11:39
spoko..
acha, czyli ze i w trybie ze zmianami $d025 i $d026 w sprites co 21 linii, i w tym co 1 linie, dwie mapy kolorow sa identyczne ? W sumie to dlaczego - przeciez mozna chyba nimi przejscia tonalne robic.
I nie do konca rozumiem, co by miala dawac zmiana ksztaltow sprites ? Chodzi tylko o ta zmiane co 21 linii, tak?

No i jedna uwaga: wlaczonych jest 7 sprajtow ($7F do $D015).

Powiem szczerze: edytor z tego zrobic, to troche porazka. Tzn. mam na mysli to, ze grafik musial by sie niezle napocic zeby \"od zera\" cos narysowac z takimi ograniczeniami, i przy kazdym pixelu sie zastanawiac skad go wziac (tlo/bitmapa/4pixel sprajt. Bardziej edytor chyba do korekcji konwertow przydatny \"Smile\"

Przy okazji, dla ciekawskich - tak wygladaja skladowe obrazka:

1. Podloze, czyli mapa kolorow 8x8:



2. Warstwa pierwsza, czyli sprajty X-expand w multicolor



3. Warstwa druga, czyli HiRes z bitmapy



-----------------

Polaczenie 1+2



Polaczenie 1+2+3



Teraz musze troche poczytac o programowaniu na PC \"Very

Pozdrawiam
Tytuł: MUCSU
Wiadomość wysłana przez: Skull w 14 Lutego 2012, 11:52
                   
nes napisal:
Chodzi tylko o ta zmiane co 21 linii, tak?


tak, inaczej nie zdazysz przelaczyc wszystkich ksztaltow.
lda sta to 6 cykli, razy 8 to 48, 8 sprites zabieraja 8*2+3 = 19  w kazdej linii w ktorej sa wyswietlane, czyli 63-19 = 44 - czyli juz brakuje 4 cykli, zeby wykonac skuteczna zmiane w wybranej linii.

Fakt, MUCSU wykorzystuje 7 sprites, czyli mozna sie wyrobic, ale ... nie w Badline \"Sad\", stad ta druga kopia ekranu koloru - teraz mozesz sobie ksztalty ustalic wczesniej, a tylko w odpowiedniej linii przelaczyc mape kolorow w $d018 na nr2, potem ksztalty zmieniasz w nr1 i przelaczasz przy \"kolejnej okazji\" (czyli w nastepnej +21 liniii) itd.
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 14 Lutego 2012, 11:58
OK, dzieki

A jeszcze pytanie - o tym ze to zielone tlo po prawej w tym konkretnym obrazku jest ma w lewej polowie podloze z 8x8 a w prawej ze sprites w multicolor zadecydowal automatycznie konwerter, czy to jest ta reczna zmiana o ktorej pisal isildur ?
Tytuł: MUCSU
Wiadomość wysłana przez: Skull w 14 Lutego 2012, 00:00
Nie, reczna korekta byla tylko w minimalnym stopniu, Isildur troche \"przesadzil\".
Ale akurtat kolorowanie tych obszarow mozna z gory narzucic konwerterowi. W wersji konwertera nr2, mozna poustawiac, wybor manualny kolorow, oraz wymusic stary tryb (bez zmiany co linie koloru w $d025,$d026) i ja wlasnie z tego korzystam - nowego konwertera do starego formatu \"Smile\".
Tytuł: MUCSU
Wiadomość wysłana przez: isildur__ w 14 Lutego 2012, 00:00
                   
skull napisal:
Nie, reczna korekta byla tylko w minimalnym stopniu, Isildur troche \"przesadzil\"


Nie do konca, po prostu nie mowilem Ci o kazdym pikselu, sam palec wskazujacy lewej reki to bylo jakies 20 konwersji, a konwersja odbywa sie tak: obrazek w P1 -> konwerter MUCSU -  jesli zle to screenshot, korekta w P1 i zapetlenie. Po prostu czasami niewazne co zrobisz, to konwerter i tak zrobi po swojemu, tzn. tam jakies usrednianie kolorow w danym obszarze dziala.
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 15 Lutego 2012, 20:37
digger - fajna opcja jest w Twoim edytorze - to pixelowanie patternami \"Smile\" podoba mi sie to
btw. w jakim trybie jest obrazek ?
no i ogolnie respect za taki projekt we flash
Tytuł: MUCSU
Wiadomość wysłana przez: jok__ w 16 Lutego 2012, 15:15
Mam pytanie - najnowsza wersja IMOSa to ta?
IMOS V0.6B 7.1  

A do Diggera - Czy jest szansa, zeby sledzic postepy w wersji online - czy moze planujesz wersje standalone dla testerow \"Smile\"
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 17 Lutego 2012, 11:33
                   
jok napisal:
Mam pytanie - najnowsza wersja IMOSa to ta?
IMOS V0.6B 7.1  


Tak. Potem udostepnilem zrodla, gdyby ktos potrzebowal cos sobie pozmieniac/dopisac - http://noname.c64.org/csdb/release/?id=89228 (pod Borland C++ chyba 6.0 albo 5.0, nie pamietam)
Tytuł: MUCSU
Wiadomość wysłana przez: booker__ w 17 Lutego 2012, 16:02
Nes, website u Mayka (toto zyje jeszcze? \"Smile\" Ci nie klika
Tytuł: MUCSU
Wiadomość wysłana przez: nes__ w 17 Lutego 2012, 17:01
wlasnie go o to kilka dni temu pytalem - powiedzial ze niestety fizycznie tamten serwer z danymi przepadl, tak ze tutorial tez. zachowala sie tylko niepelna wersja, tutaj wystawiam:

http://4x4.x12.pl/imos/imos.html

brakuje chyba troche obrazkow i nie wiem czy pozniej nie bylo cos jeszcze dopisane, jakies tutoriale