Strona 1 z 3

: 08 lut 2012, 20:53
autor: Digger
jak dziala to MUCSU? tak w jednej linijce.

: 08 lut 2012, 22:42
autor: carrion
@dggr
zajebiście! :D

: 09 lut 2012, 12:29
autor: isildur
carrion pisze:@dggr
zajebiście! :D
Dokładnie, zajebiście. Niestety nie ma do tego trybu edytora i jest się zdanym na łaskę konwertera. Mimo, że dziecko było perfekcyjnie narysowane, to po konwersji zawsze jakieś shity się pojawiały (na rękach zwłaszcza). Niekończące się poprawki poprawek.

: 09 lut 2012, 12:38
autor: bimber
isildur pisze:Niestety nie ma do tego trybu edytora
wciąż mam cichą nadzieję, że ktoś kiedyś...

: 09 lut 2012, 21:08
autor: Digger
Moge napisac taki modul do http://c64.blog2t.net/slixed/ tylko wyjasnijcie zasady/limity.

: 10 lut 2012, 08:47
autor: skull
Niezłe!
MUCSU (czy tam MUSCU), to warstwa ze sprites poszerzonych w x i w multicolorze, na całym ekranie, na niej standardowy tryb hires.
Czyli jest to warstwa w poziomie: 7 kolumn sprites (wg hiresowego pixla to 7*48 = 336, czyli nawet więcej niż ma ekran) i w pionie 10 rzędów
Daje to 70 kształtów + bitmapa w hiresie.
W podstawowej wersji tego trybu(jednak najbardziej funkconalnej), kolory sprites w trakcie wyświetlania nie ulegają zmianie - czyli są przyporządkowane przy inicjacji, wtedy na każdą kolumne przypada jeden kolor wspólny(d027..), i na całości 2 multi (d025,d026). Reszta jak w hiresie.
No i trzeba pamiętać że piksel w trybie extendedX + multicolor ma 4 px w stosunku do hiresu.

Chodzi o dobór odpowiedniej kombinacji, na pewno nie jest to łatwe, ale
przyda się nawet edytor do samej korekty po konwersji.

Moge dać źródłowkę jak to się wyślwietla.

: 10 lut 2012, 13:20
autor: isildur
Digger pisze:Moge napisac taki modul do http://c64.blog2t.net/slixed/ tylko wyjasnijcie zasady/limity.
No świetnie, że w końcu coś się rusza w toolsach do grafy na c64!
Digger, jakie są szanse na Twój Slixed w wersji stacjonarnej (nie online)?

: 10 lut 2012, 17:45
autor: brush
@Digger: Dałoby się to do AIR'a przerzucić?

: 10 lut 2012, 18:14
autor: kmeg
isildur pisze: Digger, jakie są szanse na Twój Slixed w wersji stacjonarnej (nie online)?
Nie moje technologie ale:
1. Pobrać: http://www.adobe.com/support/flashplayer/downloads.html (flash player projector)
2. Pobrać: http://c64.blog2t.net/slixed/editor.swf

Uruchomić 1 i wczytać 2...

Ale AIR będzie zdecydowanie lepszy jak się da...

: 10 lut 2012, 18:43
autor: nes
ten tryb bym mógł dość łatwo dodać do edytora w IMOS, który w tej chwili edytuje dowolnie położone na ekranie sprajty (czyli w sumie musiał bym tylko dodać x-extend + edycję hires), ale tak dawno temu IMOS pisałem, że już zapomniałem jak się programuje ;) :P Zresztą tam chyba nawet się dało wczytać obrazek jako tło przy edycji sprajtów, więc prawie wszystko gotowe.. (da się wczytać np. obrazek w multi i edytować nałożoną na niego dowolnie skomponowaną matrycę ze sprajtów)

: 10 lut 2012, 21:02
autor: nes
jakaś sciema jest z tą modyfikacją postów - 2 godziny po napisaniu nie da się zmienić, mimo że nikt nie odpowiedział, a chcę tylko dodać dodatkowe info.

przechodząc do sedna sprawy: czy ktoś mógłby zamieścić niespakowany plik z obrazkiem w tym trybie ze sprajtami + rozpiskę co gdzie mniej więcej w nim jest i czy te sprajty są wyświetlane z jednakowym Y w linii czy każdy przesunięty w dół o ileś pixeli ? obejrzę i może napiszę edytor.

: 10 lut 2012, 22:42
autor: isildur
nes pisze: przechodząc do sedna sprawy: czy ktoś mógłby zamieścić niespakowany plik z obrazkiem w tym trybie ze sprajtami + rozpiskę co gdzie mniej więcej w nim jest i czy te sprajty są wyświetlane z jednakowym Y w linii czy każdy przesunięty w dół o ileś pixeli ? obejrzę i może napiszę edytor.
Sure :) w zipie masz PRG i RAW z konwertera.
Dziecko tak powinno wyglądać, ale konwerter skaszanił to i owo.
Zwróćcie uwagę, że w pierwszej fazie Skull wykorzystał dziecko z częścią multi, a następnie przepisał fragment na Hires! Oczywiście w tym trybie Mucsu/Nufli mieści się jeden obrazek w pamięci, nie licząc muzyki i kodu!
To jest koderski kunszt, ale takie rzeczy nie są oczywiście zauważane...

: 11 lut 2012, 00:34
autor: k.
tak czy siak miałem odpowiedzieć wegiemu po zlookaniu:
Więc demo właśnie oberzałem, muza jakbym miał rozstrzelać to już ujdzie. Podrasowana trzyma się treści i to chyba zasługa Randala.
Efekty koderskie: faktycznie że na emulcu efekty c128 są wolne, da się to obejrzeć nie róbcie tego więcej ...
Pan patrzący na wektorki.... o kurde to jest najbardziej zajebisty part do porównania dla mających dopalacze... Wegi dałeś czadu :)
Reasumując, paru dobrych koderów, muzyk z jajami i się trzymacie w TOP 10.

: 11 lut 2012, 12:10
autor: nes
isildur - a rozpiskę gdzie co jest w pamięci bym mógł poprosić ? na C64 odpalił bym sobie .prg, dał freeze w Action'ie i sprawdził w procedurze wyświetającej, a na PC przerzucać .prg do .d64 żeby zamountować po wczytaniu Actiona a potem zgadywać gdzie jest freeze.. :?

: 11 lut 2012, 12:48
autor: isildur
Niestety nie mam takiej wiedzy, Skull da Ci rozpiske bez problemu, napisz do niego.

: 11 lut 2012, 20:32
autor: nes
rozkminiłem trochę wyświetlarkę (leniwy jestem, nie chciało mi się emaila do skull'a pisać ;) ):

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

- wygląda na to, że ekrany są przełączane przemiennie co linię

$4800 - $5C00 - sprajty

$5C00 - ??? - zmienne kolory dla $D025 (co ile one są zmieniane, co linię ?)
$5D00 - ??? - zmienne kolory dla $D026 (co ile one są zmieniane, co linię ?)

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

$6000 - $7F40 - bitmapa

Sprajty są ustawione równo w poziomie, bez przesunięć Y

: 11 lut 2012, 21:16
autor: skull

Kod: Zaznacz cały

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 części z dzieckiem: zmiana obrazów nie ma żadnych kombinacji - w pamięci są dwa obrazy mucsu, które są wymieniane (można nawet zmienić to dziecko na Carriona "Train"), warstwa sprites jest na całym ekranie - po prostu nie wszędzie "wykorzystana".

@nes to co analizujesz to jest już druga wersja MUCSU- ze zmianą d025 i d026, co linię - oczywiście w tym wypadku to już marny tryb, bo proca zajmuje tyle co NUFLI (i w tym wypadku NUFLI ma większe możliwości,tyle że pamięci zajmuje mniej.
Tu kolory ustalasz raz przy inicjacji, a potem tylko przerwanie przy zmianie kształtów dla sprites i przesunięcie w dół: czyli 10 razy w trakcie wyświetlania ekranu.

: 11 lut 2012, 21:58
autor: nes
skull - ok, ale jak piszę edytor to w sumie mogę napisać na ten z przeplotem i zrobić opcję wyłączania przeplotu..
czyli w tym co jest zamieszczony obrazek, to nie ma ani zmiany ekranów, ani zmiany $d025/$d026 co linię ? (w wyświetlarce w pliku .prg jest..)

ps. ja to na PC piszę.. żeby nie było wątpliwości..

: 12 lut 2012, 02:39
autor: nes
ok.. po całym dniu dupc..nia sie z pecetowym pojęciem programowania, i czytaniem na forach, że dopóki do zmiennej nie dopisze się +"" to będzie integerem a nie char'em, i tym podobnych fantastycznych zagadnieniach, udało mi się w końcu wyświetlić coś co przypomina obrazek.

Ale tylko przypomina. Stąd pytanie - czy na pewno dobrze rozumiem, że to jest hires w którym znak 8x8 pixeli może mieć 1 kolor + wspólne tło, czy to jest hires z osobnym kolorem tła dla każdego znaku..?
jeśli to drugie, to nie wiedziałem, że da się pod spód sprajty podłożyć
a jeśli nie, to muszę trochę odpocząć, i się zastanowić dlaczego to nadal nie wygląda tak jak powinno..

Obrazek

orginał:

Obrazek

pozdro. uff.

ps. tak piszecie o zajmowaniu pamięci, a że co 8my sprajt jest pusty w tym trybie to już taki drobny szczegół.. też pół godziny dochodzenia miałem dlaczego są rozjechane :P

: 12 lut 2012, 15:13
autor: nes
ok, rozkminiłem..

muszę przyznać, że do tej pory nie wiedziałem, że w hires da się ustawić sprajty tak że mają priorytet nad kolorem tła znaku, a pod bitmapą :oops: