Skip to content

Commit

Permalink
feat(*): initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
alekmaul committed Feb 16, 2024
1 parent 261109b commit f59d7e7
Show file tree
Hide file tree
Showing 13 changed files with 2,259 additions and 0 deletions.
45 changes: 45 additions & 0 deletions snes-examples/maps/slopemario/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
ifeq ($(strip $(PVSNESLIB_HOME)),)
$(error "Please create an environment variable PVSNESLIB_HOME with path to its folder and restart application. (you can do it on windows with <setx PVSNESLIB_HOME "/c/snesdev">)")
endif

# BEFORE including snes_rules :
# list in AUDIOFILES all your .it files in the right order. It will build to generate soundbank file
AUDIOFILES := overworld.it
# then define the path to generate soundbank data. The name can be different but do not forget to update your include in .c file !
export SOUNDBANK := soundbank

include ${PVSNESLIB_HOME}/devkitsnes/snes_rules

.PHONY: bitmaps all

#---------------------------------------------------------------------------------
# ROMNAME is used in snes_rules file
export ROMNAME := slopemario

# to build musics, define SMCONVFLAGS with parameters you want
SMCONVFLAGS := -s -o $(SOUNDBANK) -V -b 5
musics: $(SOUNDBANK).obj

all: musics mariojump.brr bitmaps $(ROMNAME).sfc

clean: cleanBuildRes cleanRom cleanGfx cleanAudio
@rm -f *.clm mariojump.brr

#---------------------------------------------------------------------------------
mario_sprite.pic: mario_sprite.bmp
@echo convert sprites ... $(notdir $@)
$(GFXCONV) -gs16 -pc16 -po16 -n $<

tiles.pic: tiles.png
@echo convert map tileset... $(notdir $@)
$(GFXCONV) -gs8 -pc16 -po16 -m -fpng -n $<

map_1_1.m16: map_1_1.tmj tiles.pic
@echo convert map tiled ... $(notdir $@)
$(TMXCONV) $< tiles.map

mariofont.pic: mariofont.bmp
@echo convert font with no tile reduction ... $(notdir $@)
$(GFXCONV) -pc16 -n -gs8 -po2 -pe1 -mR! -m $<

bitmaps : tiles.pic mariofont.pic map_1_1.m16 mario_sprite.pic
41 changes: 41 additions & 0 deletions snes-examples/maps/slopemario/data.asm
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
.include "hdr.asm"

.section ".rodata1" superfree

tileset:
.incbin "tiles.pic"
tilesetend:

tilepal:
.incbin "tiles.pal"

mariogfx: .incbin "mario_sprite.pic"
mariogfx_end:

mariopal: .incbin "mario_sprite.pal"

snesfont: .incbin "mariofont.pic"
snesfont_end:

snespal: .incbin "mariofont.pal"

jumpsnd: .incbin "mariojump.brr"
jumpsndend:

.ends

.section ".rodata2" superfree

mapmario:
.incbin "BG1.m16"

objmario:
.incbin "map_1_1.o16"

tilesetatt:
.incbin "map_1_1.b16"

tilesetdef:
.incbin "map_1_1.t16"

.ends
45 changes: 45 additions & 0 deletions snes-examples/maps/slopemario/hdr.asm
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@

.MEMORYMAP ; Begin describing the system architecture.
SLOTSIZE $8000 ; The slot is $8000 bytes in size. More details on slots later.
DEFAULTSLOT 0 ; There's only 1 slot in SNES, there are more in other consoles.
SLOT 0 $8000 ; Defines Slot 0's starting address.
SLOT 1 $0 $2000
SLOT 2 $2000 $E000
SLOT 3 $0 $10000
.ENDME ; End MemoryMap definition

.ROMBANKSIZE $8000 ; Every ROM bank is 32 KBytes in size
.ROMBANKS 8 ; 2 Mbits - Tell WLA we want to use 8 ROM Banks

.SNESHEADER
ID "SNES" ; 1-4 letter string, just leave it as "SNES"

NAME "LIBSNES SLOPE EXAMPLE" ; Program Title - can't be over 21 bytes,
; "123456789012345678901" ; use spaces for unused bytes of the name.

SLOWROM
LOROM

CARTRIDGETYPE $00 ; $00 = ROM only $02 = ROM+SRAM, see WLA documentation for others
ROMSIZE $08 ; $08 = 2 Mbits, see WLA doc for more..
SRAMSIZE $00 ; $00 = No Sram, $01 = 16 kbits, see WLA doc for more..
COUNTRY $01 ; $01 = U.S. $00 = Japan, that's all I know
LICENSEECODE $00 ; Just use $00
VERSION $00 ; $00 = 1.00, $01 = 1.01, etc.
.ENDSNES

.SNESNATIVEVECTOR ; Define Native Mode interrupt vector table
COP EmptyHandler
BRK EmptyHandler
ABORT EmptyHandler
NMI VBlank
IRQ EmptyHandler
.ENDNATIVEVECTOR

.SNESEMUVECTOR ; Define Emulation Mode interrupt vector table
COP EmptyHandler
ABORT EmptyHandler
NMI EmptyHandler
RESET tcc__start ; where execution starts
IRQBRK EmptyHandler
.ENDEMUVECTOR
Binary file added snes-examples/maps/slopemario/map_1_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,310 changes: 1,310 additions & 0 deletions snes-examples/maps/slopemario/map_1_1.tmj

Large diffs are not rendered by default.

Loading

0 comments on commit f59d7e7

Please sign in to comment.