OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 10:17

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ]  Přejít na stránku 1, 2  Další
Autor Zpráva
PříspěvekNapsal: 22.05.2019, 19:47 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
cíl:
vytořit v asembleru program, který
1. zobrazí obrázek-fotku
2. bude přehrávat hudbu (SID)
3. nad obrázkem se bude pohybovat nějaký sprite :hang:
4. spustit to na reálném železe :cman:

to vše chci udělat přes víkend a bude to k 45tým narozeninám přítelkyně :candle:
-předem jsem byl varován, že tohle ženská asi neocení
takže to tu nechám jako kuchařku pro další blázny (a pro mne až to budu opět dělat za několik let znovu), co by si chtěli udělat svoje

předem upozorňuji, že nejsem grafik ani skladatel a programátor taky ne :lamer:
-takže budu keslit minimálně
-hudbu použiji již hotovou
-v programování se nebudu pouštět do žádných velkých :pig: -tj žádné rotující vektory, zoomování..

pro komfort použiji PC, kde vše zmastím a otestuji

co bude potřeba:
libovolný textový editor (např notepad, já používám pspad)
kompilátor (použil jsem http://tass64.sourceforge.net/)
emulátor C64 (vice)
editor obrázků ve formátu C64 (PIXCEN)
editor spritů (kdysi jsem nějaký použil, ale nemám ho )
stáhnout si nějaký SID -volba je jasná -hapy birthday to you..
program na editaci disket http://www.d64editor.com

pokračování o víkendu..

jinak jsem našel tento program Extreme Demo Maker 100%, který by udělal asi co potřebuji bez použití asembleru
https://csdb.dk/release/?id=65444
PS:
před pár lety jsem už něco vytvořil, šlo mi hlavně zkusit techniku jak se dostat za kraj, viz příloha
Příloha:
MujPRG.prg [49.63 KiB]
642 krát


Přílohy:
30letC64.png
30letC64.png [ 378.49 KiB | Zobrazeno 17788 krát ]

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Naposledy upravil sandokan dne 22.05.2019, 23:25, celkově upraveno 1
Nahoru
 Profil  
 
PříspěvekNapsal: 22.05.2019, 20:40 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
1. krok je otestovat, že kompilátor funguje (hlavně jde o syntaxi) a že to jde nahrát a spustit.

jako test bude sloužit změna barvy rámečku na černou:

*=$C000 ;počáteční adresa volné RAM -desítkově 49152

znovu
lda #$00 ;do akumulátoru ulož nulu=černá barva
sta $d020 ;ulož na adresu D020 (53280) =registr grafického čipu pro barvu rámečku

jmp znovu

*******
spuštění kompilace z příkazového řádku windows:
64tass.exe -C -a -B -i c:\c64\mojedemo\test.asm -o c:\c64\mojedemo.prg

výsledný soubor má pak 10 bytů: 00 C0 A9 00 8D 20 D0 4C 00 C0
první 2 byty je startovací adresa C000, akorát v obráceném pořadí

pokud se tento soubor nahraje do C64, tak se nic nestane.
spustit se dá přes SYS 49152

ve VIC emulátoru je zabudovaný monitor paměti (CTRL+H)
akorát nic neukáže a musí se zadat "d C000" tj disasemble + adresa, pak to vypadá takto:

(C:$c002) d c000
.C:c000 A9 00 LDA #$00
.C:c002 8D 20 D0 STA $D020
.C:c005 4C 00 C0 JMP $C000
.C:c008 00 BRK
.C:c009 00 BRK

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 22.05.2019, 20:58 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
jak na SID formát?
tady je popis SID formátu
http://www.hvsc.c64.org/download/C64Music/DOCUMENTS/SID_file_format.txt
detailněji zde
http://www.unusedino.de/ec64/technical/formats/sidplay.html

-zatím jsem našel tento příklad přehrávací rutiny:
kde na $1000 je init a na $1003 rutina play
voláno pravidelně od pozice $40 obrazového paprsku -rasterline + efekt změny barvy rámečku (ten vyhodím)

sei
lda #$00
tax
tay
jsr $1000

again

lda #$40
cmp $d012
bne *-3
inc $d020
jsr $1003
dec $d020

jmp again

EDIT: už jsem zkusil a nahrál čistá data SIDu bez hlavičky a hraje to :whist:
v prvním příspěvku chybí jeden nástroj - přehrávač SIDu - k výběru správného songu
použil jsem SIDplay64 https://csdb.dk/release/?id=161475
-dobré je že vám řekne, kde jsou uložena data

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 23.05.2019, 08:22 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
sandokan píše:
kompilátor (použil jsem http://tass64.sourceforge.net/)
Ano, ten pouzivam aj ja. Kedysi som skusal aj CBM Studio, ale to bolo na niektore veci uplne nemozne (definicie oblasti v pameti, generovanie listingu a binarky) takze som ho rychlo opustil.
sandokan píše:
pokud se tento soubor nahraje do C64, tak se nic nestane.
spustit se dá přes SYS 49152
Da sa to urobit aj tak aby sa subor spustil automaticky. Staci ak prikaz SYS bude priamo sucastou skompilovaneho programu a cele sa to ulozi na adresu #0801 kde normalne zacina basic:
Kód:
*=$801
        .word   basend
        .word   $0000
        .byte   $9E     ;; Kod prikazu SYS
        .text   '2061'  ;; spustacia adresa
        .byte   $00
basend  .word   $0000

start   lda     #$00    ;; 0 = cierna
        sta     $D020   ;; Nastavenie farby borderu
        rts


Nahoru
 Profil  
 
PříspěvekNapsal: 23.05.2019, 09:45 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
Busy -dík za reakci,
ten SYS tam samozřejmě dám taky, použil jsem to jako rychlý test a díky za připomentutí, protože bych to musel hledat.
-jsem teď v zahraničí na služebce a nemám u sebe ani zdroják toho dema co jsem před 7mi lety vytvořil (tam ten SYS mám) + ukradl hudbu s rutinou a font.

jakákoliv připomínka/nápad je vítán,
cíl je velice jednoduchý (nedal jsem tam ani scroll text), hlavně pro člověka, který si občas něco napíše - hodinová záležitost.
jde o boj sehnat a nastudovat syntaxi a ovládání různých programů a to mi zabere víc času, než napsat samotný program.
pamatuji si že, než jsem vytvořil to první demo, tak jsem 2 dny seděl a dělal reverz inženýring dema co se mi líbilo a to jsem to první den chtěl vzdát, protože to byly různé bitové operace s registry a nechápal jsem proč - než jsem pochopil -respektive jsem si přečetl scroll text v demu, že nejvíc práce dala 4 kanálová rutina pro 3 kanálový SID a v tom jsem se hrabal 1 den :suicide:

budu se snažit to okomentovat, tak, aby to pochopil i někdo, kdo to nikdy nedělal a chtěl by si to sám zkusit.

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 23.05.2019, 13:49 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
2. krok -vybrat SID a spustit ho

nejlepší je vytvořit si prázdnou disketu a do ní umístit SIDplay a nějaké SIDy a spustit v emulátoru a vybrat si svého favorita

pak si vykopírovat čistá SID data bez hlavičky
SID player ukazuje, kde jsou data uloženy, v mém případě MEM $1000 - $18A1
Pak je důležitá adresa INIT $1000 a PLAY $1003

To se dá udělat více způsoby, já zvolil uložení paměti do souboru z monitoru (alt+H) VIC emulátoru příkazem:
s "SIDDATA" 8 1000 18a1

emulátor to pak uloží na namapovanou disketu, příkaz „s“ ukládá i s počáteční adresou (2 byty navíc), takže se to pak pro test dá nahrát přímo

POZNÁMKA
Samotná data SIDu jsou ve skutečnosti již programem co je potřeba pravidelně volat

K „volání“ stačí zkompilovat toto „mujSIDplay.prg“:


*=$C000

sei
lda #$00
tax
tay
jsr $1000 ; volání INIT

again

lda #$40
cmp $d012
bne *-3
inc $d020
jsr $1003 ;volání PLAY
dec $d020

jmp again


pak nahrát data SIDU a mujSIDplay.prg a sputit SYS49152


Přílohy:
MujSIDplay.png
MujSIDplay.png [ 23.88 KiB | Zobrazeno 17672 krát ]
Sidplay.png
Sidplay.png [ 105.06 KiB | Zobrazeno 17672 krát ]
D64edit.png
D64edit.png [ 46.61 KiB | Zobrazeno 17672 krát ]

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***
Nahoru
 Profil  
 
PříspěvekNapsal: 23.05.2019, 20:53 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
tady je kod, co vloží SID data tam kde mají být a přidá přehrávač na C000
Kód:
sid     = "Happy_BirthdayDev.sid"        ; jmeno SID souboru
init    = binary(sid, $0a, 2); z hlavicky vytahni INIT adresu
play    = binary(sid, $0c, 2); z hlavicky vytahni PLAY adresu

*=$801
        .word   basend
        .word   $0000
        .byte   $9E     ;; Kod prikazu SYS
        .text   '49152'  ;; spustacia adresa
        .byte   $00
basend  .word   $0000

*= binary(sid, $7c, 2); pouzij adresu
.binary sid, $7e     ; vloz SID data bez hlavicky

;tady bude velka dira nul...
       
*=$C000

        sei            ; zakaz preruseni
        lda #$00       ; 0 -> A
        tax            ; A -> X
        tay            ; A -> Y
        jsr $1000      ; odskoc na INIT

again   lda #$40
        cmp $d012
        bne *-3
        inc $d020
        jsr $1003       ; odskoc na PLAY
        dec $d020
        jmp again


nechal jsem se inspirovat helpem assembleru s příkladem
init = binary(sid, $0a, 2); z hlavicky vytahni INIT adresu
jenže pokud to vložím takto "univerzálně":
jsr init ; odskoc na INIT
tak je ta adresa po kompilaci obráceně a neumím to otočit :scratched:

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 07:07 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
sandokan píše:
Kód:
;tady bude velka dira nul...
No, to by som nechcel nahravat z kazety ... :)
V tomto pripade je lepsie vsetko ulozit pekne pokope (aj s basicom) od #0801 a po spusteni to na cielove miesta normalne skopirovat.
sandokan píše:
tak je ta adresa po kompilaci obráceně a neumím to otočit :scratched:
Vytiahni to po jednotlivych bajtoch a z bajtov rucne spocitaj 16-bitovu adresu pomocou rotacie a bitoveho ORu.


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 11:18 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
Busy píše:
Vytiahni to po jednotlivych bajtoch a z bajtov rucne spocitaj 16-bitovu adresu pomocou rotacie a bitoveho ORu.

ja bych to raději nechal na assembler, aby to udělal při kompilaci

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 12:11 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
3. krok vložit obrázek -fotku

Obrázek bude zobrazen ve formátu MULTICOLOR tj 160x200 bodů.

Program Pixcen umí pracovat z různými formáty C64 a zároveň umí celkem slušně převést barvy do barev C64 s patřičnými restrikcemi multicolor modu.
Akorát neumí měnit rozlišení, což není problém udělat jinde.
Při otevření obrázku v Pixcen stačí jen vybrat formát MULTICOLOR a je hotovo.
Je jasné, že vždy záleží na tom jaký je původní obrázek a výsledek je pak různý.
Dá se to pak ručně po pixelech doupravit.

Příloha:
Pixcen.png
Pixcen.png [ 96.58 KiB | Zobrazeno 17576 krát ]


Pak stačí uložit 3 binární soubory
-bitmap RAM.bmp
-screen RAM.scr
-color RAM.col

Tyto binárky je pak potřeba načíst do C64 na patřičná místa paměti a nastavit registry grafického čipu VIC-II
Kód:
sid     = "Happy_BirthdayDev.sid"        ; jmeno SID souboru
bmp     = "Pav1.map"        ; jmeno BMP souboru  8000 bytes
screen  = "Pav1.scr"        ; jmeno SCREEN souboru 1000 bytes
col     = "Pav1.col"        ; jmeno COLOR souboru  1000 bytes

init    = binary(sid, $0a, 2); z hlavicky vytahni INIT adresu
play    = binary(sid, $0c, 2); z hlavicky vytahni PLAY adresu

*=$801
        .word   basend
        .word   $0000
        .byte   $9E         ; Kod prikazu SYS
        .text   '49152'     ; spousteci adresa C000
        .byte   $00
basend  .word   $0000

*= binary(sid, $7c, 2); vytáhni adresu z hlavičky a nastav adresu
.binary sid, $7e      ; vloz SID data bez hlavicky

;tady bude velka dira nul...
*=$5c00             
.binary screen        ; vloz SCREEN data
*=$6000
.binary bmp           ; vloz BMP data
 
;8000 - BFFF dalsi dira nul :-)
       
*=$C000

        sei            ; zakaz preruseni
        lda #$00       ; 0 -> A
        tax            ; A -> X
        tay            ; A -> Y
        jsr $1000      ; odskoc na INIT
;nastaveni grafiky
         lda #%00000010
         sta $dd00      ; přepni VIC na blok $4000 -$7FFFF

         lda $d011
         ora #%00110000   ;zapni bitmap mod BMM bit 5, bit3 0=25 1=24 radku
         sta $d011   
 
         lda $d016
         ora #%00011000   ;zapni multicolor MCM bit 4, bit3 0=38 1=40 sloupcu
         sta $d016   

         lda #%01111000  ; 0111 screen RAM +$1C00=>$5C000, bit3 bitmap +$2000=>$6000
         sta  $d018
;konec nastaveni grafiky
again   lda #$40
        cmp $d012
        bne *-3
        inc $d020
        jsr $1003       ; odskoc na PLAY
        dec $d020
        jmp again
       
*=$d800               
.binary col            ; vloz COLOR data

Po kompilaci už celkem dlouhej program -je to zatím na kde mezi kodem a daty je spousta nul
Příloha:
MojeDemo1.png
MojeDemo1.png [ 168.18 KiB | Zobrazeno 17576 krát ]

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 13:20 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
výsledek nic moc :pig:
ladit vstupní obrázek a pak to pixelovat je práce na dlouhé zimní večery..
takže je to tak, jak jsem udělal napoprvé

znáte někdo lepší metodu??

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 14:56 
Offline
Kecálek

Registrován: 16.05.2013, 13:18
Příspěvky: 230
Has thanked: 6 times
Been thanked: 43 times
sandokan píše:
výsledek nic moc :pig:
ladit vstupní obrázek a pak to pixelovat je práce na dlouhé zimní večery..
takže je to tak, jak jsem udělal napoprvé

znáte někdo lepší metodu??

Neznam Pixcen, ale něco podobnýho je Project One. Ten při konvertu umožňuje vybrat z C64 palety barvy, který se použijou. Fotku tváře bych zkusit konvertovat do černo-šedo-bílý.


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2019, 15:36 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
sandokan píše:
Busy píše:
Vytiahni to po jednotlivych bajtoch a z bajtov rucne spocitaj 16-bitovu adresu pomocou rotacie a bitoveho ORu.
ja bych to raději nechal na assembler, aby to udělal při kompilaci
Ano, presne to som myslel - nech to asembler pri kompilacii vytiahne po bajtoch a spocita z nich adresu.


Nahoru
 Profil  
 
PříspěvekNapsal: 25.05.2019, 18:53 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
Opravdu ručníkový den – Don’t panic
Ten VIC je horší jak sudoku s 5 čísly.

Několik hodin jsem se potrápil s obyčejnými sprity. Konkrétně s ukazatelem na adresu spritu, kdy jsem sice správně vypočítal adresu ukazatele
sprite0 = VICbase + ScreenRAM + $03f8 , ($4000+$1C00+$03f8=$5c3f8 -z pohledu CPU)
sprite1 = VICbase + ScreenRAM + $03f9 ,
..
Sprite7= VICbase + ScreenRAM + $03ff

kde počátek screenRAM je z pohledu VIC dle:
$D018 = %0000xxxx -> screenRAM $0000
$D018 = %0001xxxx -> screenRAM $0400
$D018 = %0010xxxx -> screenRAM $0800
$D018 = %0011xxxx -> screenRAM $0c00
$D018 = %0100xxxx -> screenRAM $1000
$D018 = %0101xxxx -> screenRAM $1400
$D018 = %0110xxxx -> screenRAM $1800
$D018 = %0111xxxx -> screenRAM $1c00 ( VICbase + $1c00 = $5c00 -z pohledu CPU)
$D018 = %1000xxxx -> screenRAM $2000
$D018 = %1001xxxx -> screenRAM $2400
$D018 = %1010xxxx -> screenRAM $2800
$D018 = %1011xxxx -> screenRAM $2c00
$D018 = %1100xxxx -> screenRAM $3000
$D018 = %1101xxxx -> screenRAM $3400
$D018 = %1110xxxx -> screenRAM $3800
$D018 = %1111xxxx -> screenRAM $3c00

ale pro samotný ukazatel jsem nepřipočetl offset $2000, kyž jsem si nastavil bit3 do 1 :suicide:
$D018 = %xxxx0xxx -> bmpStart $0000
$D018 = %xxxx1xxx -> bmpStart =$2000 ( VICbase + $2000 = $6000 -z pohledu CPU)

Pokud Sprite uložíme hned za bmp data (jejichž délka je 320x200/8= 8000 = $1f40 bytů) tj na $2000+$1f40= $3f40 (respektive na $7f40 z pohledu CPU) pak
SPRITE0pointer = $3F40 / $40 = $FD (kterou uložíme na adresu $5c3f8)

Začátky definice spritů mohou být uloženy jen po +$40 (64 bytů) od počátku adresace VIC (Sprite0RAM = VICbase + Sprite0pointer * $40 -z pohledu CPU)

tady velký pozor !
Pokud si uložíme z nějakého editoru data spritů hned za sebe (tak jak jsem poprvé udělal), tak mezi každý sprite musíme vložit 1 byte jinak se další sprite „zrotuje“ o 1/3 doleva.

Já se zde http://www.c64.cz/index.php?recenze=assembler11 chytil tohoto popisu:
Hires sprit má tedy velikost 24 * 21 bitů, což znamená , že zabírá v paměti místo 4*21 bajtů ( 64 znaků) a vůbec mě nenapadlo si to spočítat, že 64 je špatně
Má tam být 3*21 = 63 bytů /znaků :!:
Ten 1 byte mě stál několik hodin hledání, kde je chyba :bang: – přehození indiáni v assembleru…

Škoda že ten 1 byte konstruktéři nevyužili pro individuální nastavení 2 barev (4+4 bity) pro každý sprite zvlášť namístou SHARED multicolor registry MM0 + MM1

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
PříspěvekNapsal: 25.05.2019, 19:00 
Offline
Profík
Uživatelský avatar

Registrován: 26.03.2015, 18:45
Příspěvky: 579
Bydliště: Třebíč
Has thanked: 43 times
Been thanked: 91 times
4. krok -nakreslit SPRITY

našel jsem perfektní stránku https://www.spritemate.com/
Příloha:
WebSpriteEditor.png
WebSpriteEditor.png [ 125.4 KiB | Zobrazeno 17498 krát ]


kde si v prohlížeči rovnou sprity namalujete a vygenerujete data:
Kód:
// 2 sprites generated with spritemate on 25/05/2019, 01:33:20

LDA #$07 // sprite multicolor 1
STA $D025
LDA #$01 // sprite multicolor 2
STA $D026


// sprite 0 / multicolor / color: $02
sprite_0:
.byte %00000000,%00000000,%00000000
.byte %00000000,%00000000,%00000000
.byte %00000000,%00000000,%00000000
.byte %00000000,%00100000,%00000000
.byte %00000000,%00010000,%00000000
.byte %00000000,%00000000,%00000000
.byte %00000000,%00110000,%00000000
.byte %00000000,%00110000,%00000000
.byte %00001010,%10101010,%10000000
.byte %00000110,%01100110,%01000000
.byte %00001010,%10101010,%10000000
.byte %00010101,%01010101,%01010000
.byte %00010101,%01010101,%01010000
.byte %00101010,%10101010,%10100000
.byte %00101010,%10101010,%10100000
.byte %00010101,%01010101,%01010000
.byte %00101010,%10101010,%10100000
.byte %00101010,%10101010,%10100000
.byte %00101010,%10101010,%10100000
.byte %00100110,%01100110,%01100000
.byte %00000000,%00000000,%00000000

// sprite 1 / singlecolor / color: $0a
sprite_2:
.byte %00000000,%00000000,%00000000
.byte %00000000,%00000000,%00000000
.byte %00001111,%00000011,%11000000
.byte %00011111,%10000111,%11100000
.byte %00111111,%11001111,%11110000
.byte %00111111,%11111111,%11110000
.byte %01111111,%11111111,%11111000
.byte %01111111,%11111111,%11111000
.byte %01111111,%11111111,%11111000
.byte %00111111,%11111111,%11111000
.byte %00011111,%11111111,%11110000
.byte %00001111,%11111111,%11100000
.byte %00001111,%11111111,%11000000
.byte %00000111,%11111111,%10000000
.byte %00000011,%11111111,%00000000
.byte %00000011,%11111110,%00000000
.byte %00000001,%11111100,%00000000
.byte %00000000,%01111000,%00000000
.byte %00000000,%00110000,%00000000
.byte %00000000,%00000000,%00000000
.byte %00000000,%00000000,%00000000

_________________
C64C 2x, C64C s S-Video, C64 MK2 reloaded, floppy 1541-II 3x, Commodore monitor 1084, MPS1250, 1541 ultimate II+, FCIII, SD2IEC, XU1541
*** 8bit lives matter ***


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ]  Přejít na stránku 1, 2  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 2 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz