├── #artworks
├── fonts
│ ├── WOODCUTTER simple font.ttf
│ ├── Woodcutter Black Square.ttf
│ ├── Woodcutter Negative.ttf
│ ├── chinese rocks rg.ttf
│ └── woodcutter del rev.ttf
└── logo_rse_wood
│ ├── logo_prototypes.ai
│ └── logo_prototypes.png
├── .gitignore
├── 2d_physics_simulation
├── pkg.core
│ ├── fonts
│ │ └── default.ttf
│ ├── lua
│ │ ├── 30log.lua
│ │ ├── capsule.lua
│ │ ├── cone.lua
│ │ ├── cube.lua
│ │ ├── cylinder.lua
│ │ ├── fade.lua
│ │ ├── getopt_alt.lua
│ │ ├── math_common.lua
│ │ ├── plane.lua
│ │ ├── sky_lighting.lua
│ │ ├── sky_scatter.lua
│ │ ├── sphere.lua
│ │ └── wall.lua
│ ├── materials
│ │ └── default.mat
│ ├── sha1.txt
│ ├── shaders
│ │ ├── ambient.isl
│ │ ├── chromatic_dispersion.isl
│ │ ├── common.i
│ │ ├── default_light_model.i
│ │ ├── ds_fog.isl
│ │ ├── ds_linearlight.isl
│ │ ├── ds_linearlight_shadow.isl
│ │ ├── ds_pointlight.isl
│ │ ├── ds_pointlight_shadow.isl
│ │ ├── ds_spotlight.isl
│ │ ├── ds_spotlight_shadow.isl
│ │ ├── error.isl
│ │ ├── fx_blur.isl
│ │ ├── hsl.isl
│ │ ├── motion_blur.isl
│ │ ├── noise.isl
│ │ ├── radial_blur.isl
│ │ ├── shadow_common.i
│ │ ├── sharpen.isl
│ │ ├── simple.isl
│ │ ├── single_color.isl
│ │ ├── single_texture.isl
│ │ ├── single_texture_2d.isl
│ │ ├── single_texture_color.isl
│ │ ├── single_texture_cutoff.isl
│ │ ├── single_texture_fx.isl
│ │ ├── sky_scatter.isl
│ │ ├── skybox.isl
│ │ ├── ssaa.isl
│ │ ├── ssao.isl
│ │ ├── ssao_blur.isl
│ │ └── surface.i
│ ├── surfaces
│ │ ├── default.isl
│ │ ├── diffuse.isl
│ │ ├── diffuse_map.isl
│ │ ├── diffuse_map_alpha.isl
│ │ ├── diffuse_map_normal_map.isl
│ │ ├── diffuse_map_normal_map_parallax_map.isl
│ │ ├── diffuse_map_self_map.isl
│ │ ├── diffuse_map_specular_map.isl
│ │ ├── diffuse_map_specular_map_normal_map.isl
│ │ ├── diffuse_map_specular_map_normal_map_self_map.isl
│ │ ├── diffuse_map_specular_map_self_map.isl
│ │ ├── diffuse_specular.isl
│ │ ├── reflection_map_cubic.isl
│ │ ├── reflection_map_spherical.isl
│ │ ├── skinned_diffuse.isl
│ │ ├── skinned_diffuse_map.isl
│ │ ├── skinned_diffuse_map_normal_map.isl
│ │ └── skinned_diffuse_map_specular_map_normal_map.isl
│ ├── textures
│ │ ├── dither.tga
│ │ ├── error.png
│ │ └── noise.tga
│ └── version.txt
├── python
│ ├── simulation_cubes.bat
│ ├── simulation_cubes.py
│ └── utils.py
└── src
│ └── simulation.h
├── 2d_starfield
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── 3d_logo_rse
├── python
│ ├── 3d
│ │ ├── meshes
│ │ │ ├── logo_e.mtl
│ │ │ ├── logo_e.obj
│ │ │ ├── logo_r.mtl
│ │ │ ├── logo_r.obj
│ │ │ ├── logo_s.mtl
│ │ │ └── logo_s.obj
│ │ ├── obj_to_c_wireframe.bat
│ │ ├── obj_to_c_wireframe.py
│ │ ├── util.py
│ │ └── vector3.py
│ ├── build_easing_table.bat
│ └── build_easing_table.py
├── src
│ ├── Gens.cfg
│ ├── RSE_Logo3DScreen.h
│ ├── RSE_easing_table.c
│ ├── RSE_easing_table.h
│ ├── RSE_logo_meshs.c
│ ├── RSE_logo_meshs.h
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── quicksort.c
│ ├── quicksort.h
│ ├── res
│ │ ├── gfx.h
│ │ ├── gfx.res
│ │ ├── logo_boot.vgm
│ │ ├── logo_rse_3d.png
│ │ ├── music.h
│ │ └── music.res
│ └── src
│ │ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
└── work
│ ├── music
│ ├── logo_boot.vge
│ └── logo_boot001.vge
│ ├── rse_logo
│ ├── logo_e.max
│ ├── logo_r.max
│ ├── logo_s.max
│ ├── rse_3letters_variant_b_E.obj
│ ├── rse_3letters_variant_b_R.obj
│ └── rse_3letters_variant_b_S.obj
│ └── rse_logo_2d
│ ├── logo_rse_3d-neo.png
│ ├── logo_rse_3d-original.png
│ ├── logo_rse_3d.png
│ ├── logo_rse_3d_template.png
│ ├── logo_rse_3d_template.psd
│ ├── logo_x1.png
│ └── logo_x4.png
├── 3d_meshes
├── python
│ └── 3d
│ │ ├── build_cosine_tables.bat
│ │ ├── build_cosine_tables.py
│ │ ├── meshes
│ │ ├── cube.obj
│ │ ├── cubic_cross.obj
│ │ ├── cylinder.obj
│ │ ├── cylinder_subd.obj
│ │ ├── metacube.obj
│ │ └── triangle_mess.obj
│ │ ├── obj_to_c_wireframe.bat
│ │ ├── obj_to_c_wireframe.py
│ │ ├── util.py
│ │ └── vector3.py
└── src
│ ├── Gens.cfg
│ ├── RSE_3DFlatShadedScreen.h
│ ├── build.bat
│ ├── essai3D.cbp
│ ├── language.dat
│ ├── main.c
│ ├── meshs.c
│ ├── meshs.h
│ ├── out
│ └── rom.bin
│ ├── quicksort.c
│ ├── quicksort.h
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── 3d_physics_simulation
├── pkg.core
│ ├── fonts
│ │ └── default.ttf
│ ├── lua
│ │ ├── 30log.lua
│ │ ├── capsule.lua
│ │ ├── cone.lua
│ │ ├── cube.lua
│ │ ├── cylinder.lua
│ │ ├── fade.lua
│ │ ├── getopt_alt.lua
│ │ ├── math_common.lua
│ │ ├── plane.lua
│ │ ├── sky_lighting.lua
│ │ ├── sky_scatter.lua
│ │ ├── sphere.lua
│ │ └── wall.lua
│ ├── materials
│ │ └── default.mat
│ ├── sha1.txt
│ ├── shaders
│ │ ├── ambient.isl
│ │ ├── chromatic_dispersion.isl
│ │ ├── common.i
│ │ ├── default_light_model.i
│ │ ├── ds_fog.isl
│ │ ├── ds_linearlight.isl
│ │ ├── ds_linearlight_shadow.isl
│ │ ├── ds_pointlight.isl
│ │ ├── ds_pointlight_shadow.isl
│ │ ├── ds_spotlight.isl
│ │ ├── ds_spotlight_shadow.isl
│ │ ├── error.isl
│ │ ├── fx_blur.isl
│ │ ├── hsl.isl
│ │ ├── motion_blur.isl
│ │ ├── noise.isl
│ │ ├── radial_blur.isl
│ │ ├── shadow_common.i
│ │ ├── sharpen.isl
│ │ ├── simple.isl
│ │ ├── single_color.isl
│ │ ├── single_texture.isl
│ │ ├── single_texture_2d.isl
│ │ ├── single_texture_color.isl
│ │ ├── single_texture_cutoff.isl
│ │ ├── single_texture_fx.isl
│ │ ├── sky_scatter.isl
│ │ ├── skybox.isl
│ │ ├── ssaa.isl
│ │ ├── ssao.isl
│ │ ├── ssao_blur.isl
│ │ └── surface.i
│ ├── surfaces
│ │ ├── default.isl
│ │ ├── diffuse.isl
│ │ ├── diffuse_map.isl
│ │ ├── diffuse_map_alpha.isl
│ │ ├── diffuse_map_normal_map.isl
│ │ ├── diffuse_map_normal_map_parallax_map.isl
│ │ ├── diffuse_map_self_map.isl
│ │ ├── diffuse_map_specular_map.isl
│ │ ├── diffuse_map_specular_map_normal_map.isl
│ │ ├── diffuse_map_specular_map_normal_map_self_map.isl
│ │ ├── diffuse_map_specular_map_self_map.isl
│ │ ├── diffuse_specular.isl
│ │ ├── reflection_map_cubic.isl
│ │ ├── reflection_map_spherical.isl
│ │ ├── skinned_diffuse.isl
│ │ ├── skinned_diffuse_map.isl
│ │ ├── skinned_diffuse_map_normal_map.isl
│ │ └── skinned_diffuse_map_specular_map_normal_map.isl
│ ├── textures
│ │ ├── dither.tga
│ │ ├── error.png
│ │ └── noise.tga
│ └── version.txt
├── python
│ ├── simulation_cubes.bat
│ └── simulation_cubes.py
└── src
│ └── simulation.h
├── 3d_starfield
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── 3d_starfield_using_sprites
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ └── sprite_stars.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── README.md
├── asm
└── src
│ ├── ASMtest.h
│ ├── ASMtest.s
│ ├── main.c
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── axelay_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── clouds.png
│ ├── gfx.h
│ ├── gfx.res
│ └── sea.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── bitmap_stretch_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── cosine_table.c
│ ├── cosine_table.h
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ └── wood_plank.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── boing_ball_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── boing_impact-8.wav
│ ├── boingball.png
│ ├── checkback.png
│ ├── checkboard.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── resources.h
│ └── resources.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── cosmos-2016
└── work
│ └── cosmonaut
│ ├── cosmonaut.png
│ └── cosmonaut.psd
├── demo-Rog-MD-port
├── LICENSE
├── README.md
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── cat.png
│ ├── fish.png
│ ├── gfx.h
│ └── gfx.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── dot_matrix_fx
├── python
│ ├── genetiles
│ │ ├── generate_tiles.bat
│ │ └── generate_tiles.py
│ └── imgseq2c
│ │ ├── convert_sequence.bat
│ │ ├── convert_sequence.py
│ │ └── tore_tunnel
│ │ ├── frame_0000.png
│ │ ├── frame_0001.png
│ │ ├── frame_0002.png
│ │ ├── frame_0003.png
│ │ ├── frame_0004.png
│ │ ├── frame_0005.png
│ │ ├── frame_0006.png
│ │ ├── frame_0007.png
│ │ ├── frame_0008.png
│ │ └── frame_0009.png
├── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── img_seq.c
│ ├── img_seq.h
│ ├── language.dat
│ ├── main.c
│ ├── out
│ │ └── rom.bin
│ ├── res
│ │ ├── gfx.h
│ │ ├── gfx.res
│ │ └── pat_round.png
│ └── src
│ │ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
└── work
│ └── star_tunnel.gif
├── exxos-demo
└── python
│ ├── .idea
│ ├── .name
│ ├── misc.xml
│ ├── modules.xml
│ ├── python.iml
│ ├── vcs.xml
│ └── workspace.xml
│ ├── assets
│ ├── exxos_mask.json
│ ├── landscape_mountains.png
│ ├── landscape_stones.png
│ ├── logo_exxos.png
│ ├── space_moon.png
│ ├── space_planet.png
│ ├── space_star.png
│ └── xo2s.xm
│ ├── exxos_demo.py
│ ├── graphic_routines.py
│ ├── imgui.ini
│ ├── pkg.core
│ ├── fonts
│ │ └── default.ttf
│ ├── lua
│ │ ├── capsule.lua
│ │ ├── cone.lua
│ │ ├── cube.lua
│ │ ├── cylinder.lua
│ │ ├── fade.lua
│ │ ├── getopt_alt.lua
│ │ ├── math_common.lua
│ │ ├── packages
│ │ │ ├── 30log.lua
│ │ │ ├── ftp.lua
│ │ │ ├── headers.lua
│ │ │ ├── http.lua
│ │ │ ├── ltn12.lua
│ │ │ ├── mbox.lua
│ │ │ ├── mime.lua
│ │ │ ├── smtp.lua
│ │ │ ├── socket.lua
│ │ │ ├── tp.lua
│ │ │ └── url.lua
│ │ ├── plane.lua
│ │ ├── sky_lighting.lua
│ │ ├── sky_scatter.lua
│ │ ├── sphere.lua
│ │ └── wall.lua
│ ├── materials
│ │ └── default.mat
│ ├── sha1.txt
│ ├── shaders
│ │ ├── ambient.isl
│ │ ├── chromatic_dispersion.isl
│ │ ├── common.i
│ │ ├── default_light_model.i
│ │ ├── ds_fog.isl
│ │ ├── ds_linearlight.isl
│ │ ├── ds_linearlight_shadow.isl
│ │ ├── ds_pointlight.isl
│ │ ├── ds_pointlight_shadow.isl
│ │ ├── ds_spotlight.isl
│ │ ├── ds_spotlight_shadow.isl
│ │ ├── error.isl
│ │ ├── fx_blur.isl
│ │ ├── hsl.isl
│ │ ├── motion_blur.isl
│ │ ├── noise.isl
│ │ ├── radial_blur.isl
│ │ ├── shadow_common.i
│ │ ├── sharpen.isl
│ │ ├── simple.isl
│ │ ├── single_color.isl
│ │ ├── single_texture.isl
│ │ ├── single_texture_2d.isl
│ │ ├── single_texture_color.isl
│ │ ├── single_texture_cutoff.isl
│ │ ├── single_texture_fx.isl
│ │ ├── sky_scatter.isl
│ │ ├── skybox.isl
│ │ ├── ssaa.isl
│ │ ├── ssao.isl
│ │ ├── ssao_blur.isl
│ │ └── surface.i
│ ├── surfaces
│ │ ├── default.isl
│ │ ├── diffuse.isl
│ │ ├── diffuse_map.isl
│ │ ├── diffuse_map_alpha.isl
│ │ ├── diffuse_map_normal_map.isl
│ │ ├── diffuse_map_normal_map_parallax_map.isl
│ │ ├── diffuse_map_self_map.isl
│ │ ├── diffuse_map_specular_map.isl
│ │ ├── diffuse_map_specular_map_normal_map.isl
│ │ ├── diffuse_map_specular_map_normal_map_self_map.isl
│ │ ├── diffuse_map_specular_map_self_map.isl
│ │ ├── diffuse_specular.isl
│ │ ├── reflection_map_cubic.isl
│ │ ├── reflection_map_spherical.isl
│ │ ├── skinned_diffuse.isl
│ │ ├── skinned_diffuse_map.isl
│ │ ├── skinned_diffuse_map_normal_map.isl
│ │ └── skinned_diffuse_map_specular_map_normal_map.isl
│ ├── textures
│ │ ├── dither.tga
│ │ ├── error.png
│ │ └── noise.tga
│ └── version.txt
│ ├── screen_specs.py
│ ├── starfield.py
│ └── utils.py
├── fast_dot_cube
├── python
│ └── 3d
│ │ ├── build_velocity_tables.bat
│ │ ├── build_velocity_tables.py
│ │ ├── obj_to_c_vectorball.bat
│ │ ├── obj_to_c_vectorball.py
│ │ ├── util.py
│ │ ├── vector3.py
│ │ └── vectorballs
│ │ └── cube.obj
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── edges.c
│ ├── edges.h
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── fast_cube_dot.png
│ ├── gfx.h
│ ├── gfx.res
│ └── marble_background.png
│ ├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
│ ├── velocity_table.c
│ └── velocity_table.h
├── fast_starfield
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── easing_table.c
│ ├── easing_table.h
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ └── starfield.png
│ ├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
│ ├── transition_helper.c
│ └── transition_helper.h
├── fast_starfield_w_donuts
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── demo_strings.h
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── amiga-font.png
│ ├── donut.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── maak_soundtest01_20160211.vgm
│ ├── news-vip2017.png
│ ├── resources.h
│ ├── resources.res
│ └── starfield.png
│ ├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
│ ├── transition_helper.c
│ ├── transition_helper.h
│ ├── writer.c
│ └── writer.h
├── fullscreen_image_display
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ └── shikasta_tilemap.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── merge
└── src
│ ├── RSE_Logo3DScreen.h
│ ├── RSE_easing_table.c
│ ├── RSE_easing_table.h
│ ├── RSE_logo_meshs.c
│ ├── RSE_logo_meshs.h
│ ├── ball_coords.c
│ ├── ball_coords.h
│ ├── main.c
│ ├── main_axelay_fx.c
│ ├── main_axelay_fx.h
│ ├── main_boing_ball_fx.c
│ ├── main_boing_ball_fx.h
│ ├── main_logo.c
│ ├── main_logo.h
│ ├── main_starfield_2d.c
│ ├── main_starfield_2d.h
│ ├── main_tunnel.c
│ ├── main_tunnel.h
│ ├── main_twisted_metal.c
│ ├── main_twisted_metal.h
│ ├── main_underwater_starfield_fx.c
│ ├── main_underwater_starfield_fx.h
│ ├── main_vector_balls.c
│ ├── main_vector_balls.h
│ ├── quicksort.c
│ ├── quicksort.h
│ ├── res
│ ├── ball_metal.png
│ ├── boing_impact-8.wav
│ ├── boingball.png
│ ├── checkback.png
│ ├── checkboard.png
│ ├── clouds.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── logo_boot.vgm
│ ├── logo_rse_3d.png
│ ├── music.h
│ ├── music.res
│ ├── resources.h
│ ├── resources.res
│ ├── sea.png
│ ├── sprite_stars.png
│ ├── twister.png
│ └── underwater.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── outline_intro
├── Gens.cfg
├── ball_coords.c
├── ball_coords.h
├── build.bat
├── build_from_scratch.bat
├── demo_strings.c
├── demo_strings.h
├── dot_matrix.c
├── easing_table.c
├── easing_table.h
├── end_loop.c
├── endscreen.c
├── img_seq.c
├── img_seq.h
├── language.dat
├── logo_screen.c
├── logo_screen.h
├── main.c
├── music.c
├── music.h
├── plasma.c
├── python
│ ├── build_easing_table.bat
│ └── build_easing_table.py
├── quicksort.c
├── quicksort.h
├── res
│ ├── alexkidd.png
│ ├── alexkidd_overlay.png
│ ├── ball_metal.png
│ ├── childwrite_8x8.png
│ ├── endscreen_a.png
│ ├── endscreen_a_2.png
│ ├── endscreen_a_3.png
│ ├── endscreen_a_4.png
│ ├── endscreen_b.png
│ ├── endscreen_b_2.png
│ ├── endscreen_b_3.png
│ ├── endscreen_b_4.png
│ ├── gfx.res
│ ├── level_0.png
│ ├── level_1.png
│ ├── level_2.png
│ ├── level_3.png
│ ├── level_bg.png
│ ├── logo_demo.png
│ ├── logo_rse_bottom_9bits.png
│ ├── logo_rse_top_9bits.png
│ ├── malabar_bumper.vgm
│ ├── pat_round.png
│ ├── plasma.png
│ ├── plasma_greetings.png
│ ├── rasters.png
│ ├── resources.h
│ ├── resources.res
│ ├── smiley-gelmir.png
│ ├── transition_pattern_0.png
│ ├── vectorball_bg_a.png
│ ├── vectorball_bg_a_2.png
│ ├── vectorball_bg_b.png
│ ├── vectorball_bg_b_2.png
│ └── vectorball_fg_a.png
├── simulation.c
├── simulation_0.h
├── simulation_1.h
├── simulation_2.h
├── simulation_3.h
├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
├── transition_helper.c
├── transition_helper.h
├── twister_fx.h
├── vector_balls.c
├── wipe_effect.c
├── wipe_effect.h
├── work
│ ├── VGM
│ │ ├── malabars_bumper-04.vge
│ │ ├── malabars_bumper-05.vge
│ │ ├── malabars_bumper-06.vge
│ │ ├── malabars_bumper-08.vge
│ │ ├── malabars_bumper-09.vge
│ │ ├── smp
│ │ │ ├── loop_00 slice 01.wav
│ │ │ ├── loop_00 slice 02.wav
│ │ │ ├── loop_00 slice 03.wav
│ │ │ ├── loop_00 slice 04.wav
│ │ │ ├── loop_00 slice 05.wav
│ │ │ ├── loop_00 slice 06.wav
│ │ │ ├── loop_00 slice 07.wav
│ │ │ ├── loop_00 slice 08.wav
│ │ │ ├── loop_01 slice 01.wav
│ │ │ ├── loop_01 slice 02.wav
│ │ │ ├── loop_01 slice 03.wav
│ │ │ ├── loop_01 slice 04.wav
│ │ │ ├── loop_01 slice 05.wav
│ │ │ ├── loop_01 slice 06.wav
│ │ │ ├── loop_01 slice 07.wav
│ │ │ ├── loop_01 slice 08.wav
│ │ │ ├── loop_02 slice 01.wav
│ │ │ ├── loop_02 slice 02.wav
│ │ │ ├── loop_02 slice 03.wav
│ │ │ ├── loop_02 slice 04.wav
│ │ │ ├── loop_02 slice 05.wav
│ │ │ ├── loop_02 slice 06.wav
│ │ │ ├── loop_02 slice 07.wav
│ │ │ ├── loop_02 slice 08.wav
│ │ │ ├── loop_03 slice 01.wav
│ │ │ ├── loop_03 slice 02.wav
│ │ │ ├── loop_03 slice 03.wav
│ │ │ ├── loop_03 slice 04.wav
│ │ │ ├── loop_03 slice 05.wav
│ │ │ ├── loop_03 slice 06.wav
│ │ │ ├── loop_03 slice 07.wav
│ │ │ └── loop_03 slice 08.wav
│ │ └── tfi
│ │ │ ├── bass.tfi
│ │ │ ├── bells.tfi
│ │ │ ├── clav_funk.tfi
│ │ │ └── lead.tfi
│ └── logo_rse
│ │ ├── logo_rse_vector.ai
│ │ └── rse_logo_smaller.psd
├── writer.c
└── writer.h
├── parallax_scrolling
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── ball_metal.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── ground.png
│ ├── midnight.vgm
│ ├── resources.h
│ ├── resources.res
│ └── rse_logo.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── perspective_checkerboard
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── checkboard.png
│ ├── gfx.h
│ └── gfx.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── pirate_intro
├── src
│ ├── Logo3DScreen.h
│ ├── ankou_screen.c
│ ├── asm.bat
│ ├── ball_coords.c
│ ├── ball_coords.h
│ ├── barb_picture.c
│ ├── barb_title_screen.c
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── cube_fx.c
│ ├── demo_strings.c
│ ├── demo_strings.h
│ ├── div_premul.c
│ ├── div_premul.h
│ ├── easing_table.c
│ ├── easing_table.h
│ ├── easing_table_fp.c
│ ├── easing_table_fp.h
│ ├── fire_fx.c
│ ├── flames_wave.c
│ ├── logo_meshs.c
│ ├── logo_meshs.h
│ ├── main.c
│ ├── main_logo.c
│ ├── main_logo.h
│ ├── music.c
│ ├── music.h
│ ├── page_writer.c
│ ├── page_writer.h
│ ├── quicksort.c
│ ├── quicksort.h
│ ├── res
│ │ ├── ball_metal.png
│ │ ├── ball_shadow.png
│ │ ├── ball_transition.png
│ │ ├── barb_pic_back-0.png
│ │ ├── barb_pic_back-1.png
│ │ ├── barb_pic_back-2.png
│ │ ├── barb_pic_back-3.png
│ │ ├── barb_pic_back.png
│ │ ├── barb_pic_front.png
│ │ ├── bg_sky.png
│ │ ├── btiger_font.png
│ │ ├── checkboard-0.png
│ │ ├── checkboard-1.png
│ │ ├── checkboard-2.png
│ │ ├── checkboard-3.png
│ │ ├── checkboard.png
│ │ ├── checkboard_logo.png
│ │ ├── conan-on-fire_256px-small.png
│ │ ├── cube_anim.png
│ │ ├── cube_anim_shadow.png
│ │ ├── exocet-ankou-back-0.png
│ │ ├── exocet-ankou-back-1.png
│ │ ├── exocet-ankou-back-2.png
│ │ ├── exocet-ankou-back-3.png
│ │ ├── exocet-ankou-front-0.png
│ │ ├── exocet-ankou-front-1.png
│ │ ├── exocet-ankou-front-2.png
│ │ ├── exocet-ankou-front-3.png
│ │ ├── exocet-ankou-front-darken.png
│ │ ├── flames-0.png
│ │ ├── flames-1.png
│ │ ├── flames-2.png
│ │ ├── flames-3.png
│ │ ├── flames.png
│ │ ├── gfx.h
│ │ ├── gfx.res
│ │ ├── logo_boot.vgm
│ │ ├── logo_rse_3d.png
│ │ ├── masiaka001.vgm
│ │ ├── masiaka_title.png
│ │ ├── medieval_girl.png
│ │ ├── resources.h
│ │ ├── resources.res
│ │ ├── rse_logo_shadow.png
│ │ ├── rse_retrowave_logo.png
│ │ ├── rsi_logo-0.png
│ │ ├── rsi_logo-1.png
│ │ ├── rsi_logo.png
│ │ ├── shield_anim-0.png
│ │ ├── shield_anim-1.png
│ │ ├── shield_anim.png
│ │ ├── sky.png
│ │ ├── sprite_stars.png
│ │ ├── sword.png
│ │ └── transition_pattern.png
│ ├── shield_anim.c
│ ├── src
│ │ └── boot
│ │ │ ├── rom_head.c
│ │ │ └── sega.s
│ ├── starfield_fx.c
│ ├── string_parser.c
│ ├── string_parser.h
│ ├── transition_helper.c
│ ├── transition_helper.h
│ ├── vector_balls.c
│ ├── writer.c
│ └── writer.h
└── tools
│ ├── 3d
│ ├── build_fp_cosine_tables.bat
│ ├── build_fp_cosine_tables.py
│ ├── obj_to_c_vectorball.bat
│ ├── obj_to_c_vectorball.py
│ ├── util.py
│ ├── vector3.py
│ └── vectorballs
│ │ ├── geosphere.max
│ │ ├── geosphere.mtl
│ │ ├── geosphere.obj
│ │ ├── grid_cube.max
│ │ ├── grid_cube.mtl
│ │ ├── grid_cube.obj
│ │ ├── grid_cube_small.max
│ │ ├── grid_cube_small.mtl
│ │ └── grid_cube_small.obj
│ └── vector_ball_editor
│ ├── OpenAL32.dll
│ ├── bullet_physic_plugin.dll
│ ├── harfang_lua.exe
│ ├── ijg_picture_plugin.dll
│ ├── imgui.ini
│ ├── main.lua
│ ├── openvr_api.dll
│ ├── openvr_plugin.dll
│ ├── start.bat
│ ├── stb_audio_plugin.dll
│ ├── stb_picture_plugin.dll
│ ├── wav_audio_plugin.dll
│ └── xmp_audio_plugin.dll
├── raster
└── src
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── cosine_table.c
│ ├── cosine_table.h
│ ├── main.c
│ ├── res
│ ├── car.png
│ ├── gfx.h
│ └── gfx.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── road
└── src
│ ├── main.c
│ ├── main_road.c
│ ├── main_road.h
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ ├── road.png
│ ├── road_2 (2).png
│ └── test.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── scrolling_logo_sprites_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── res
│ ├── ball_metal.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── ground.png
│ ├── midnight.vgm
│ ├── resources.h
│ ├── resources.res
│ └── rse_logo.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── slideshow
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── easing_table.c
│ ├── easing_table.h
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── 14788_gelmir03_9bits_A.png
│ ├── 14788_gelmir03_9bits_B.png
│ ├── 15164_gelmir10_9bits.png
│ ├── 6ans_plus_tard_9bits.png
│ ├── artgemtest_9bits.png
│ ├── eva_30col_9bits.png
│ ├── gfx.h
│ ├── gfx.res
│ ├── major_b_30col_9bits.png
│ ├── morgan1994_30col_9bits.png
│ ├── pearl_30col_9bits.png
│ ├── shibibi_30col_9bits_A.png
│ ├── shibibi_30col_9bits_B.png
│ ├── together_9bits.png
│ ├── tube_9bits.png
│ └── voielactee_30col_9bits.png
│ ├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
│ ├── transition_helper.c
│ └── transition_helper.h
├── spr_custom_engine
└── src
│ ├── ball_coords.c
│ ├── ball_coords.h
│ ├── main.c
│ ├── out
│ └── rom_head.bin
│ ├── profiler.c
│ ├── profiler.h
│ ├── quicksort.c
│ ├── quicksort.h
│ ├── res
│ ├── ball_metal.png
│ └── gfx.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── tunnel_bitmap
├── python
│ ├── 2D_BitmapMode_proto
│ │ ├── build_MD_NN.bat
│ │ ├── circles.py
│ │ ├── circles2.py
│ │ ├── circles3.py
│ │ ├── circles3.pyc
│ │ ├── main.c
│ │ ├── md.py
│ │ ├── src
│ │ │ └── boot
│ │ │ │ ├── rom_head.c
│ │ │ │ └── sega.s
│ │ └── test01.py
│ └── tunnel_make_macro
│ │ ├── make_macro-v02.py
│ │ ├── make_macro.py
│ │ └── sgdk_trigo.py
├── src-v02
│ ├── main - copie.txt
│ ├── main.c
│ ├── main_tunnel.c
│ ├── main_tunnel.h
│ └── src
│ │ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
└── src
│ ├── main.c
│ ├── profiler.c
│ ├── profiler.h
│ ├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
│ ├── tunnel_macro - Copie.h
│ └── tunnel_macro.h
├── twister
├── Gens.cfg
├── build.bat
├── build_from_scratch.bat
├── language.dat
├── main.c
├── res
│ ├── gfx.h
│ ├── gfx.res
│ └── twister.png
├── src
│ └── boot
│ │ ├── rom_head.c
│ │ └── sega.s
├── twisted_metal.c
└── twisted_metal.h
├── underwater_starfield_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ ├── sprite_stars.png
│ └── underwater.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── vector_balls
├── python
│ └── 3d
│ │ ├── build_fp_cosine_tables.bat
│ │ ├── build_fp_cosine_tables.py
│ │ ├── obj_to_c_vectorball.bat
│ │ ├── obj_to_c_vectorball.py
│ │ ├── util.py
│ │ ├── vector3.py
│ │ └── vectorballs
│ │ ├── geosphere.mtl
│ │ ├── geosphere.obj
│ │ ├── grid_cube.max
│ │ ├── grid_cube.mtl
│ │ ├── grid_cube.obj
│ │ ├── grid_cube_small.max
│ │ ├── grid_cube_small.mtl
│ │ └── grid_cube_small.obj
└── src
│ ├── Gens.cfg
│ ├── ball_coords.c
│ ├── ball_coords.h
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── language.dat
│ ├── main.c
│ ├── out
│ └── rom.bin
│ ├── quicksort.c
│ ├── quicksort.h
│ ├── res
│ ├── ball_metal.png
│ ├── gfx.h
│ └── gfx.res
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
├── water_fx
└── src
│ ├── Gens.cfg
│ ├── build.bat
│ ├── build_from_scratch.bat
│ ├── cosine_table.c
│ ├── cosine_table.h
│ ├── language.dat
│ ├── main.c
│ ├── res
│ ├── gfx.h
│ ├── gfx.res
│ ├── pirate_logo.png
│ ├── water_texture_back_layer.png
│ └── water_texture_front_layer.png
│ └── src
│ └── boot
│ ├── rom_head.c
│ └── sega.s
└── xy_sin_scroll
└── src
├── Gens.cfg
├── build.bat
├── build_from_scratch.bat
├── language.dat
├── main.c
├── out
└── rom.bin
├── res
├── gfx.h
├── gfx.res
├── resources.h
├── resources.res
├── rse_logo.png
├── stars_anim.png
└── zsenilia_theme.vgm
└── src
└── boot
├── rom_head.c
└── sega.s
/#artworks/fonts/WOODCUTTER simple font.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/fonts/WOODCUTTER simple font.ttf
--------------------------------------------------------------------------------
/#artworks/fonts/Woodcutter Black Square.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/fonts/Woodcutter Black Square.ttf
--------------------------------------------------------------------------------
/#artworks/fonts/Woodcutter Negative.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/fonts/Woodcutter Negative.ttf
--------------------------------------------------------------------------------
/#artworks/fonts/chinese rocks rg.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/fonts/chinese rocks rg.ttf
--------------------------------------------------------------------------------
/#artworks/fonts/woodcutter del rev.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/fonts/woodcutter del rev.ttf
--------------------------------------------------------------------------------
/#artworks/logo_rse_wood/logo_prototypes.ai:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/logo_rse_wood/logo_prototypes.ai
--------------------------------------------------------------------------------
/#artworks/logo_rse_wood/logo_prototypes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/#artworks/logo_rse_wood/logo_prototypes.png
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/fonts/default.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/2d_physics_simulation/pkg.core/fonts/default.ttf
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/lua/math_common.lua:
--------------------------------------------------------------------------------
1 | function Lerp(k, a, b)
2 | return (b - a) * k + a
3 | end
4 |
5 | function RangeAdjust(k, a, b, u, v)
6 | return (k - a) / (b - a) * (v - u) + u
7 | end
8 |
9 | function Clamp(v, mn, mx)
10 | if (v < mn) then return mn end
11 | if (v > mx) then return mx end
12 | return v
13 | end
14 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/materials/default.mat:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/sha1.txt:
--------------------------------------------------------------------------------
1 | 043b5bf4ba63ccfe91e43f5040587291cbe3735b
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/ambient.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
11 | vec4 diff_alpha = texture2D(vGBuffer1, UV);
12 | vec4 const_unkn = texture2D(vGBuffer3, UV);
13 | %out.color% = vec4(diff_alpha.rgb * vAmbientColor + const_unkn.xyz, 1.0);
14 | %}
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/ds_fog.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | global %{
10 | #include "@core/shaders/common.i"
11 | %}
12 |
13 | source %{
14 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
15 | vec4 norm_dpth = UnpackNormalDepth(UV);
16 | %out.color% = vec4(vFogColor.rgb, clamp((norm_dpth.w - vFogState.x) * vFogState.z, 0.0, 1.0));
17 | %}
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/error.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex = "@core/textures/error.png";
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | float k = texture2D(u_tex, %in.fragcoord%.xy * vInverseInternalResolution.xy / vInverseInternalResolution.zw * 6.0).a;
9 | %constant% = vec4(k * 0.25, 0, 0, 1.0);
10 | %}
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/simple.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | %out.color% = vec4(1.0, 1.0, 1.0, 1.0);
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_color.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | out { vec4 v_color; }
4 |
5 | source %{
6 | v_color = vColor0;
7 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
8 | %}
9 | }
10 |
11 | pixel {
12 | in { vec4 v_color; }
13 |
14 | source %{
15 | %out.color% = v_color;
16 | %}
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_texture.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_texture_2d.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = vec4(vPosition, 1.0);
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_texture_color.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out {
6 | vec4 v_color;
7 | vec2 v_uv;
8 | }
9 |
10 | source %{
11 | v_color = vColor0;
12 | v_uv = vUV0;
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 | %}
15 | }
16 |
17 | pixel {
18 | in {
19 | vec4 v_color;
20 | vec2 v_uv;
21 | }
22 |
23 | source %{
24 | %out.color% = texture2D(u_tex, v_uv) * v_color;
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_texture_cutoff.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex;
3 | float u_cutoff;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out { vec2 v_uv; }
9 |
10 | source %{
11 | v_uv = vUV0;
12 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
13 | %}
14 | }
15 |
16 | pixel {
17 | in { vec2 v_uv; }
18 |
19 | source %{
20 | vec4 ref = texture2D(u_tex, v_uv);
21 | %out.color% = vec4(max(ref.rgb - u_cutoff, 0.0), ref.a);
22 | %}
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/single_texture_fx.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv * vFxScale);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/shaders/skybox.isl:
--------------------------------------------------------------------------------
1 | in {
2 | float u_time = 0.5;
3 | texCube u_layer0;
4 | texCube u_layer1;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out { vec2 v_uv; }
10 |
11 | source %{
12 | v_uv = (vPosition.xy * vec2(0.4, 0.4)) / vInverseViewportSize.zw;
13 | %out.position% = vec4(vPosition, 1.0);
14 | %}
15 | }
16 |
17 | pixel {
18 | in { vec2 v_uv; }
19 |
20 | source %{
21 | vec3 v = vec3(v_uv, 1.0);
22 | v = _mtx_mul(vNormalMatrix, normalize(v));
23 |
24 | %out.color% = mix(textureCube(u_layer0, v), textureCube(u_layer1, v), u_time);
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/default.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | }
3 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | %diffuse% = diffuse_color.xyz;
9 | %}
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec2 v_uv;
9 | }
10 |
11 | source %{
12 | v_uv = vUV0;
13 | %}
14 | }
15 |
16 | pixel {
17 | source %{
18 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
19 |
20 | %diffuse% = diffuse_color.xyz;
21 | %}
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map_alpha.isl:
--------------------------------------------------------------------------------
1 | surface {
2 | blend: alpha
3 | }
4 |
5 | in {
6 | tex2D diffuse_map;
7 | }
8 |
9 | variant {
10 | vertex {
11 | out {
12 | vec2 v_uv;
13 | }
14 |
15 | source %{
16 | v_uv = vUV0;
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
23 |
24 | %diffuse% = diffuse_color.xyz;
25 | %opacity% = diffuse_color.w;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map_normal_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D normal_map;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out {
9 | vec2 v_uv;
10 | vec3 v_normal;
11 | vec3 v_tangent;
12 | vec3 v_bitangent;
13 | }
14 |
15 | source %{
16 | v_uv = vUV0;
17 | v_normal = vNormal;
18 | v_tangent = vTangent;
19 | v_bitangent = vBitangent;
20 | %}
21 | }
22 |
23 | pixel {
24 | source %{
25 | vec3 n = texture2D(normal_map, v_uv).xyz;
26 |
27 | mat3 tangent_matrix = _build_mat3(normalize(v_bitangent), normalize(v_tangent), normalize(v_normal));
28 | n = n * 2.0 - 1.0;
29 | n = tangent_matrix * n;
30 | n = vNormalViewMatrix * n;
31 |
32 | %diffuse% = texture2D(diffuse_map, v_uv).xyz;
33 | %normal% = n;
34 | %}
35 | }
36 | }
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D self_map;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out {
9 | vec2 v_uv;
10 | }
11 |
12 | source %{
13 | v_uv = vUV0;
14 | %}
15 | }
16 |
17 | pixel {
18 | source %{
19 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
20 | vec4 self_color = texture2D(self_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %constant% = self_color.xyz;
24 | %}
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map_specular_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 | vec4 specular_color = texture2D(specular_map, v_uv);
22 |
23 | %diffuse% = diffuse_color.xyz;
24 | %specular% = specular_color.xyz;
25 | %glossiness% = glossiness;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_map_specular_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | tex2D self_map;
5 | float glossiness = 0.5;
6 | }
7 |
8 | variant {
9 | vertex {
10 | out {
11 | vec2 v_uv;
12 | }
13 |
14 | source %{
15 | v_uv = vUV0;
16 | %}
17 | }
18 |
19 | pixel {
20 | source %{
21 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
22 | vec4 specular_color = texture2D(specular_map, v_uv);
23 | vec4 self_color = texture2D(self_map, v_uv);
24 |
25 | %diffuse% = diffuse_color.xyz;
26 | %specular% = specular_color.xyz;
27 | %constant% = self_color.xyz;
28 | %glossiness% = glossiness;
29 | %}
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/diffuse_specular.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | vec4 specular_color = vec4(0.5,0.5,0.5,1.0) [hint:color];
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %specular% = specular_color.xyz;
12 | %glossiness% = glossiness;
13 | %}
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/reflection_map_cubic.isl:
--------------------------------------------------------------------------------
1 | in {
2 | texCube cube_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec3 p;
9 | vec3 n;
10 | }
11 |
12 | source %{
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 |
15 | p = (vModelMatrix * vec4(vPosition, 1.0)).xyz;
16 | n = normalize(vNormalMatrix * vNormal);
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec3 e = p - vViewPosition.xyz;
23 | vec3 r = normalize(reflect(e, normalize(n)));
24 |
25 | vec4 cube_color = textureCube(cube_map, r);
26 | %diffuse% = cube_color.xyz;
27 | %}
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/skinned_diffuse.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/surfaces/skinned_diffuse_map.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | tex2D diffuse_map;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %}
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/textures/dither.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/2d_physics_simulation/pkg.core/textures/dither.tga
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/textures/error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/2d_physics_simulation/pkg.core/textures/error.png
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/textures/noise.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/2d_physics_simulation/pkg.core/textures/noise.tga
--------------------------------------------------------------------------------
/2d_physics_simulation/pkg.core/version.txt:
--------------------------------------------------------------------------------
1 | 1.0.0
--------------------------------------------------------------------------------
/2d_physics_simulation/python/simulation_cubes.bat:
--------------------------------------------------------------------------------
1 | simulation_cubes.py
2 | pause
--------------------------------------------------------------------------------
/2d_physics_simulation/python/utils.py:
--------------------------------------------------------------------------------
1 | import math
2 |
3 | def RangeAdjust(val, in_lower, in_upper, out_lower, out_upper):
4 | return (val - in_lower) / (in_upper - in_lower) * (out_upper - out_lower) + out_lower
5 |
6 | def Clamp(x, in_lower, in_upper):
7 | return min((max(x, in_lower)), in_upper)
8 |
9 | def mapValueToArray(val, in_lower, in_upper, mapping_array):
10 | val = RangeAdjust(val, in_lower, in_upper, 0.0, 1.0)
11 | val = Clamp(val, 0.0, 1.0)
12 | array_pos = val * (len(mapping_array) - 1)
13 | ceil_pos = math.ceil(array_pos)
14 | floor_pos = math.floor(array_pos)
15 | return mapping_array[floor_pos] * float(ceil_pos - array_pos) + mapping_array[ceil_pos] * (1.0 - (float(ceil_pos - array_pos)))
--------------------------------------------------------------------------------
/2d_starfield/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/2d_starfield/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/2d_starfield/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/2d_starfield/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/2d_starfield/src/out/rom.bin
--------------------------------------------------------------------------------
/3d_logo_rse/python/3d/meshes/logo_e.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 02.01.2016 11:08:21
3 |
4 | newmtl logo_letter
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/3d_logo_rse/python/3d/meshes/logo_r.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 02.01.2016 11:03:39
3 |
4 | newmtl logo_letter
5 | Ns 9.999999046326
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.588235318661 0.588235318661 0.588235318661
12 | Kd 0.588235318661 0.588235318661 0.588235318661
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/3d_logo_rse/python/3d/meshes/logo_s.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 02.01.2016 18:31:51
3 |
4 | newmtl logo_letter
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/3d_logo_rse/python/3d/obj_to_c_wireframe.bat:
--------------------------------------------------------------------------------
1 | obj_to_c_wireframe.py
2 | pause
--------------------------------------------------------------------------------
/3d_logo_rse/python/3d/util.py:
--------------------------------------------------------------------------------
1 | from math import pi
2 |
3 | def format_number(n, accuracy=6):
4 | """Formats a number in a friendly manner (removes trailing zeros and unneccesary point."""
5 |
6 | fs = "%."+str(accuracy)+"f"
7 | str_n = fs%float(n)
8 | if '.' in str_n:
9 | str_n = str_n.rstrip('0').rstrip('.')
10 | if str_n == "-0":
11 | str_n = "0"
12 | #str_n = str_n.replace("-0", "0")
13 | return str_n
14 |
15 |
16 | def lerp(a, b, i):
17 | """Linear enterpolate from a to b."""
18 | return a+(b-a)*i
--------------------------------------------------------------------------------
/3d_logo_rse/python/build_easing_table.bat:
--------------------------------------------------------------------------------
1 | build_easing_table.py
2 | pause
--------------------------------------------------------------------------------
/3d_logo_rse/src/RSE_Logo3DScreen.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define RSE_LOGO_3D_MAX_POINTS 256
4 |
5 | #define RSE_COPY_VECTOR2D(D, S) D.x = S.x; D.y = S.y
6 |
7 | #define RSE_LOGO_3D_LOAD_MESH(mesh_name) \
8 | mesh_coord = mesh_name ## _coord; \
9 | mesh_poly_ind = mesh_name ## _poly_ind; \
10 | mesh_line_ind = mesh_name ## _line_ind; \
11 | mesh_face_norm = mesh_name ## _face_norm; \
12 | vtx_count = mesh_name ## _VTX_COUNT; \
13 | poly_count = mesh_name ## _FACE_COUNT;
--------------------------------------------------------------------------------
/3d_logo_rse/src/RSE_easing_table.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define EASING_TABLE_LEN 512
4 |
5 | extern const unsigned short easing_fp[EASING_TABLE_LEN];
6 | extern const fix16 easing_fix16[EASING_TABLE_LEN];
7 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/RSE_logo_meshs.h:
--------------------------------------------------------------------------------
1 | #define logo_e_VTX_COUNT 78
2 | #define logo_e_FACE_COUNT 19
3 | const Vect3D_f16 logo_e_coord[78];
4 | const short logo_e_poly_ind[76];
5 | const u16 logo_e_line_ind[64];
6 | const Vect3D_f16 logo_e_face_norm[19];
7 |
8 | #define logo_r_VTX_COUNT 72
9 | #define logo_r_FACE_COUNT 19
10 | const Vect3D_f16 logo_r_coord[72];
11 | const short logo_r_poly_ind[76];
12 | const u16 logo_r_line_ind[54];
13 | const Vect3D_f16 logo_r_face_norm[19];
14 |
15 | #define logo_s_VTX_COUNT 72
16 | #define logo_s_FACE_COUNT 22
17 | const Vect3D_f16 logo_s_coord[72];
18 | const short logo_s_poly_ind[88];
19 | const u16 logo_s_line_ind[60];
20 | const Vect3D_f16 logo_s_face_norm[22];
21 |
22 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/3d_logo_rse/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/3d_logo_rse/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image logo_rse_3d;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE logo_rse_3d "logo_rse_3d.png" 0
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/logo_boot.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/src/res/logo_boot.vgm
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/logo_rse_3d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/src/res/logo_rse_3d.png
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/music.h:
--------------------------------------------------------------------------------
1 | #ifndef _MUSIC_H_
2 | #define _MUSIC_H_
3 |
4 | extern const u8 logo_boot_music[40827];
5 |
6 | #endif // _MUSIC_H_
7 |
--------------------------------------------------------------------------------
/3d_logo_rse/src/res/music.res:
--------------------------------------------------------------------------------
1 | VGM logo_boot_music "logo_boot.vgm"
2 |
--------------------------------------------------------------------------------
/3d_logo_rse/work/music/logo_boot.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/music/logo_boot.vge
--------------------------------------------------------------------------------
/3d_logo_rse/work/music/logo_boot001.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/music/logo_boot001.vge
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo/logo_e.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo/logo_e.max
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo/logo_r.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo/logo_r.max
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo/logo_s.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo/logo_s.max
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_rse_3d-neo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_rse_3d-neo.png
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_rse_3d-original.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_rse_3d-original.png
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_rse_3d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_rse_3d.png
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_rse_3d_template.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_rse_3d_template.png
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_rse_3d_template.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_rse_3d_template.psd
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_x1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_x1.png
--------------------------------------------------------------------------------
/3d_logo_rse/work/rse_logo_2d/logo_x4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_logo_rse/work/rse_logo_2d/logo_x4.png
--------------------------------------------------------------------------------
/3d_meshes/python/3d/build_cosine_tables.bat:
--------------------------------------------------------------------------------
1 | build_cosine_tables.py
2 | pause
--------------------------------------------------------------------------------
/3d_meshes/python/3d/obj_to_c_wireframe.bat:
--------------------------------------------------------------------------------
1 | obj_to_c_wireframe.py
2 | pause
--------------------------------------------------------------------------------
/3d_meshes/python/3d/util.py:
--------------------------------------------------------------------------------
1 | from math import pi
2 |
3 | def format_number(n, accuracy=6):
4 | """Formats a number in a friendly manner (removes trailing zeros and unneccesary point."""
5 |
6 | fs = "%."+str(accuracy)+"f"
7 | str_n = fs%float(n)
8 | if '.' in str_n:
9 | str_n = str_n.rstrip('0').rstrip('.')
10 | if str_n == "-0":
11 | str_n = "0"
12 | #str_n = str_n.replace("-0", "0")
13 | return str_n
14 |
15 |
16 | def lerp(a, b, i):
17 | """Linear enterpolate from a to b."""
18 | return a+(b-a)*i
--------------------------------------------------------------------------------
/3d_meshes/src/RSE_3DFlatShadedScreen.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define MAX_POINTS 256
4 |
5 | #define PART_3D_LOAD_MESH(mesh_name) \
6 | mesh_coord = mesh_name ## _coord; \
7 | mesh_poly_ind = mesh_name ## _poly_ind; \
8 | mesh_line_ind = mesh_name ## _line_ind; \
9 | mesh_face_norm = mesh_name ## _face_norm; \
10 | vtx_count = mesh_name ## _VTX_COUNT; \
11 | poly_count = mesh_name ## _FACE_COUNT;
--------------------------------------------------------------------------------
/3d_meshes/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/3d_meshes/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/3d_meshes/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_meshes/src/out/rom.bin
--------------------------------------------------------------------------------
/3d_meshes/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/fonts/default.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_physics_simulation/pkg.core/fonts/default.ttf
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/lua/math_common.lua:
--------------------------------------------------------------------------------
1 | function Lerp(k, a, b)
2 | return (b - a) * k + a
3 | end
4 |
5 | function RangeAdjust(k, a, b, u, v)
6 | return (k - a) / (b - a) * (v - u) + u
7 | end
8 |
9 | function Clamp(v, mn, mx)
10 | if (v < mn) then return mn end
11 | if (v > mx) then return mx end
12 | return v
13 | end
14 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/materials/default.mat:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/sha1.txt:
--------------------------------------------------------------------------------
1 | 043b5bf4ba63ccfe91e43f5040587291cbe3735b
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/ambient.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
11 | vec4 diff_alpha = texture2D(vGBuffer1, UV);
12 | vec4 const_unkn = texture2D(vGBuffer3, UV);
13 | %out.color% = vec4(diff_alpha.rgb * vAmbientColor + const_unkn.xyz, 1.0);
14 | %}
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/ds_fog.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | global %{
10 | #include "@core/shaders/common.i"
11 | %}
12 |
13 | source %{
14 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
15 | vec4 norm_dpth = UnpackNormalDepth(UV);
16 | %out.color% = vec4(vFogColor.rgb, clamp((norm_dpth.w - vFogState.x) * vFogState.z, 0.0, 1.0));
17 | %}
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/error.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex = "@core/textures/error.png";
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | float k = texture2D(u_tex, %in.fragcoord%.xy * vInverseInternalResolution.xy / vInverseInternalResolution.zw * 6.0).a;
9 | %constant% = vec4(k * 0.25, 0, 0, 1.0);
10 | %}
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/simple.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | %out.color% = vec4(1.0, 1.0, 1.0, 1.0);
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_color.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | out { vec4 v_color; }
4 |
5 | source %{
6 | v_color = vColor0;
7 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
8 | %}
9 | }
10 |
11 | pixel {
12 | in { vec4 v_color; }
13 |
14 | source %{
15 | %out.color% = v_color;
16 | %}
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_texture.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_texture_2d.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = vec4(vPosition, 1.0);
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_texture_color.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out {
6 | vec4 v_color;
7 | vec2 v_uv;
8 | }
9 |
10 | source %{
11 | v_color = vColor0;
12 | v_uv = vUV0;
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 | %}
15 | }
16 |
17 | pixel {
18 | in {
19 | vec4 v_color;
20 | vec2 v_uv;
21 | }
22 |
23 | source %{
24 | %out.color% = texture2D(u_tex, v_uv) * v_color;
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_texture_cutoff.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex;
3 | float u_cutoff;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out { vec2 v_uv; }
9 |
10 | source %{
11 | v_uv = vUV0;
12 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
13 | %}
14 | }
15 |
16 | pixel {
17 | in { vec2 v_uv; }
18 |
19 | source %{
20 | vec4 ref = texture2D(u_tex, v_uv);
21 | %out.color% = vec4(max(ref.rgb - u_cutoff, 0.0), ref.a);
22 | %}
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/single_texture_fx.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv * vFxScale);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/shaders/skybox.isl:
--------------------------------------------------------------------------------
1 | in {
2 | float u_time = 0.5;
3 | texCube u_layer0;
4 | texCube u_layer1;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out { vec2 v_uv; }
10 |
11 | source %{
12 | v_uv = (vPosition.xy * vec2(0.4, 0.4)) / vInverseViewportSize.zw;
13 | %out.position% = vec4(vPosition, 1.0);
14 | %}
15 | }
16 |
17 | pixel {
18 | in { vec2 v_uv; }
19 |
20 | source %{
21 | vec3 v = vec3(v_uv, 1.0);
22 | v = _mtx_mul(vNormalMatrix, normalize(v));
23 |
24 | %out.color% = mix(textureCube(u_layer0, v), textureCube(u_layer1, v), u_time);
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/default.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | }
3 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | %diffuse% = diffuse_color.xyz;
9 | %}
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec2 v_uv;
9 | }
10 |
11 | source %{
12 | v_uv = vUV0;
13 | %}
14 | }
15 |
16 | pixel {
17 | source %{
18 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
19 |
20 | %diffuse% = diffuse_color.xyz;
21 | %}
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_map_alpha.isl:
--------------------------------------------------------------------------------
1 | surface {
2 | blend: alpha
3 | }
4 |
5 | in {
6 | tex2D diffuse_map;
7 | }
8 |
9 | variant {
10 | vertex {
11 | out {
12 | vec2 v_uv;
13 | }
14 |
15 | source %{
16 | v_uv = vUV0;
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
23 |
24 | %diffuse% = diffuse_color.xyz;
25 | %opacity% = diffuse_color.w;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D self_map;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out {
9 | vec2 v_uv;
10 | }
11 |
12 | source %{
13 | v_uv = vUV0;
14 | %}
15 | }
16 |
17 | pixel {
18 | source %{
19 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
20 | vec4 self_color = texture2D(self_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %constant% = self_color.xyz;
24 | %}
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_map_specular_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 | vec4 specular_color = texture2D(specular_map, v_uv);
22 |
23 | %diffuse% = diffuse_color.xyz;
24 | %specular% = specular_color.xyz;
25 | %glossiness% = glossiness;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_map_specular_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | tex2D self_map;
5 | float glossiness = 0.5;
6 | }
7 |
8 | variant {
9 | vertex {
10 | out {
11 | vec2 v_uv;
12 | }
13 |
14 | source %{
15 | v_uv = vUV0;
16 | %}
17 | }
18 |
19 | pixel {
20 | source %{
21 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
22 | vec4 specular_color = texture2D(specular_map, v_uv);
23 | vec4 self_color = texture2D(self_map, v_uv);
24 |
25 | %diffuse% = diffuse_color.xyz;
26 | %specular% = specular_color.xyz;
27 | %constant% = self_color.xyz;
28 | %glossiness% = glossiness;
29 | %}
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/diffuse_specular.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | vec4 specular_color = vec4(0.5,0.5,0.5,1.0) [hint:color];
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %specular% = specular_color.xyz;
12 | %glossiness% = glossiness;
13 | %}
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/reflection_map_cubic.isl:
--------------------------------------------------------------------------------
1 | in {
2 | texCube cube_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec3 p;
9 | vec3 n;
10 | }
11 |
12 | source %{
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 |
15 | p = (vModelMatrix * vec4(vPosition, 1.0)).xyz;
16 | n = normalize(vNormalMatrix * vNormal);
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec3 e = p - vViewPosition.xyz;
23 | vec3 r = normalize(reflect(e, normalize(n)));
24 |
25 | vec4 cube_color = textureCube(cube_map, r);
26 | %diffuse% = cube_color.xyz;
27 | %}
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/skinned_diffuse.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/surfaces/skinned_diffuse_map.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | tex2D diffuse_map;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %}
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/textures/dither.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_physics_simulation/pkg.core/textures/dither.tga
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/textures/error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_physics_simulation/pkg.core/textures/error.png
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/textures/noise.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_physics_simulation/pkg.core/textures/noise.tga
--------------------------------------------------------------------------------
/3d_physics_simulation/pkg.core/version.txt:
--------------------------------------------------------------------------------
1 | 1.0.0
--------------------------------------------------------------------------------
/3d_physics_simulation/python/simulation_cubes.bat:
--------------------------------------------------------------------------------
1 | simulation_cubes.py
2 | pause
--------------------------------------------------------------------------------
/3d_starfield/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/3d_starfield/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/3d_starfield/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_starfield_using_sprites/src/out/rom.bin
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const SpriteDefinition sprite_stars;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | SPRITE sprite_stars "sprite_stars.png" 1 1 -1
--------------------------------------------------------------------------------
/3d_starfield_using_sprites/src/res/sprite_stars.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/3d_starfield_using_sprites/src/res/sprite_stars.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # megadrive-experiments
2 | C experiments for the Megadrive/Genesis game system by Sega. Might contains some Python & other language.
3 |
--------------------------------------------------------------------------------
/asm/src/ASMtest.h:
--------------------------------------------------------------------------------
1 | void extern setVDPPalette();
--------------------------------------------------------------------------------
/asm/src/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include "ASMtest.h"
3 | /*
4 | Mixing C\ASM test
5 | nothing to show yet, but the SGDK Makefile compiling and link well the S file
6 |
7 | My first test is deal with VDP directly in ASM
8 |
9 | SGDK provide the GFX_* macros for low level job with VDP
10 |
11 |
12 | */
13 | int main(){
14 | VDP_setPaletteColors(0, (u16*)palette_black, 64);
15 | setVDPPalette(); //Call the ASM routine
16 | while (1){
17 | VDP_waitVSync();
18 | }
19 | return 0;
20 | }
21 |
--------------------------------------------------------------------------------
/axelay_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/axelay_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/axelay_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/axelay_fx/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/axelay_fx/src/out/rom.bin
--------------------------------------------------------------------------------
/axelay_fx/src/res/clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/axelay_fx/src/res/clouds.png
--------------------------------------------------------------------------------
/axelay_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image sea;
5 | extern const Image clouds;
6 |
7 | #endif // _GFX_H_
8 |
--------------------------------------------------------------------------------
/axelay_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE sea "sea.png" 0
2 | IMAGE clouds "clouds.png" 0
--------------------------------------------------------------------------------
/axelay_fx/src/res/sea.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/axelay_fx/src/res/sea.png
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/cosine_table.h:
--------------------------------------------------------------------------------
1 | #define COSINE_TABLE_LEN 512
2 |
3 | extern const int tcos[COSINE_TABLE_LEN];
4 | extern const int tsin[COSINE_TABLE_LEN];
5 |
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/bitmap_stretch_fx/src/out/rom.bin
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image wood_plank;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE wood_plank "wood_plank.png" -1
--------------------------------------------------------------------------------
/bitmap_stretch_fx/src/res/wood_plank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/bitmap_stretch_fx/src/res/wood_plank.png
--------------------------------------------------------------------------------
/boing_ball_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/boing_ball_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/boing_ball_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/boing_ball_fx/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/boing_ball_fx/src/out/rom.bin
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/boing_impact-8.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/boing_ball_fx/src/res/boing_impact-8.wav
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/boingball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/boing_ball_fx/src/res/boingball.png
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/checkback.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/boing_ball_fx/src/res/checkback.png
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/checkboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/boing_ball_fx/src/res/checkboard.png
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image checkboard;
5 | extern const Image checkback;
6 | extern const SpriteDefinition boingball_sprite;
7 |
8 | #endif // _GFX_H_
9 |
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE checkboard "checkboard.png" 0
2 | IMAGE checkback "checkback.png" 0
3 | SPRITE boingball_sprite "boingball.png" 16 16 0
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 boing_impact[19456];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/boing_ball_fx/src/res/resources.res:
--------------------------------------------------------------------------------
1 | WAV boing_impact "boing_impact-8.wav" 0 8000
--------------------------------------------------------------------------------
/cosmos-2016/work/cosmonaut/cosmonaut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/cosmos-2016/work/cosmonaut/cosmonaut.png
--------------------------------------------------------------------------------
/cosmos-2016/work/cosmonaut/cosmonaut.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/cosmos-2016/work/cosmonaut/cosmonaut.psd
--------------------------------------------------------------------------------
/demo-Rog-MD-port/README.md:
--------------------------------------------------------------------------------
1 | Rog-MD-port
2 | ===========
3 |
4 | Megadrive port project of the demoscene intro 'Rog' by Funkentstört
5 |
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/demo-Rog-MD-port/src/out/rom.bin
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/res/cat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/demo-Rog-MD-port/src/res/cat.png
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/res/fish.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/demo-Rog-MD-port/src/res/fish.png
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image cat;
5 | extern const Image fish;
6 |
7 | #endif // _GFX_H_
8 |
--------------------------------------------------------------------------------
/demo-Rog-MD-port/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE cat "cat.png" -1
2 | IMAGE fish "fish.png" 0
--------------------------------------------------------------------------------
/dot_matrix_fx/python/genetiles/generate_tiles.bat:
--------------------------------------------------------------------------------
1 | generate_tiles.py
2 | pause
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/convert_sequence.bat:
--------------------------------------------------------------------------------
1 | convert_sequence.py
2 | pause
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0000.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0001.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0002.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0002.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0003.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0003.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0004.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0004.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0005.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0006.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0006.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0007.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0007.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0008.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0008.png
--------------------------------------------------------------------------------
/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0009.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/python/imgseq2c/tore_tunnel/frame_0009.png
--------------------------------------------------------------------------------
/dot_matrix_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/dot_matrix_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/dot_matrix_fx/src/img_seq.h:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | #define TILE_BITS 4
5 | #define TILE_STEPS 16
6 |
7 | /* tore_tunnel */
8 | #define tore_tunnel_IMG_COUNT 16
9 | #define tore_tunnel_IMG_LEN 300
10 |
11 | const u16 tore_tunnel_seq[4800];
12 |
13 | /* star_tunnel */
14 | #define star_tunnel_IMG_COUNT 16
15 | #define star_tunnel_IMG_LEN 300
16 |
17 | const u16 star_tunnel_seq[4800];
18 |
19 |
--------------------------------------------------------------------------------
/dot_matrix_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/dot_matrix_fx/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/src/out/rom.bin
--------------------------------------------------------------------------------
/dot_matrix_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image pat_round;
5 | extern const Image rse_logo;
6 | extern const SpriteDefinition rse_logo_shadow;
7 | extern const SpriteDefinition rse_logo_shadow_alt;
8 |
9 | #endif // _GFX_H_
10 |
--------------------------------------------------------------------------------
/dot_matrix_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE pat_round "pat_round.png" 0
2 | IMAGE rse_logo "rse_logo.png" 0
3 | SPRITE rse_logo_shadow "rse_logo_shadow.png" 20 5 -1
4 | SPRITE rse_logo_shadow_alt "rse_logo_shadow_alt.png" 20 5 -1
5 |
--------------------------------------------------------------------------------
/dot_matrix_fx/src/res/pat_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/src/res/pat_round.png
--------------------------------------------------------------------------------
/dot_matrix_fx/work/star_tunnel.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/dot_matrix_fx/work/star_tunnel.gif
--------------------------------------------------------------------------------
/exxos-demo/python/.idea/.name:
--------------------------------------------------------------------------------
1 | python
--------------------------------------------------------------------------------
/exxos-demo/python/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/exxos-demo/python/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/exxos-demo/python/.idea/python.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/exxos-demo/python/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/exxos-demo/python/assets/landscape_mountains.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/landscape_mountains.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/landscape_stones.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/landscape_stones.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/logo_exxos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/logo_exxos.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/space_moon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/space_moon.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/space_planet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/space_planet.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/space_star.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/space_star.png
--------------------------------------------------------------------------------
/exxos-demo/python/assets/xo2s.xm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/assets/xo2s.xm
--------------------------------------------------------------------------------
/exxos-demo/python/imgui.ini:
--------------------------------------------------------------------------------
1 | [Debug]
2 | Pos=60,60
3 | Size=400,400
4 | Collapsed=0
5 |
6 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/fonts/default.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/pkg.core/fonts/default.ttf
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/lua/math_common.lua:
--------------------------------------------------------------------------------
1 | function Lerp(k, a, b)
2 | return (b - a) * k + a
3 | end
4 |
5 | function RangeAdjust(k, a, b, u, v)
6 | return (k - a) / (b - a) * (v - u) + u
7 | end
8 |
9 | function Clamp(v, mn, mx)
10 | if (v < mn) then return mn end
11 | if (v > mx) then return mx end
12 | return v
13 | end
14 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/materials/default.mat:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/sha1.txt:
--------------------------------------------------------------------------------
1 | 9f3b9e7d9d276f65123e85b3429ee76f5de3a70e
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/ambient.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
11 | vec4 diff_alpha = texture2D(vGBuffer1, UV);
12 | vec4 const_unkn = texture2D(vGBuffer3, UV);
13 | %out.color% = vec4(diff_alpha.rgb * vAmbientColor + const_unkn.xyz, 1.0);
14 | %}
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/ds_fog.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = vec4(vPosition, 1.0);
5 | %}
6 | }
7 |
8 | pixel {
9 | global %{
10 | #include "@core/shaders/common.i"
11 | %}
12 |
13 | source %{
14 | vec2 UV = %in.fragcoord%.xy * vInverseInternalResolution.xy;
15 | vec4 norm_dpth = UnpackNormalDepth(UV);
16 | %out.color% = vec4(vFogColor.rgb, clamp((norm_dpth.w - vFogState.x) * vFogState.z, 0.0, 1.0));
17 | %}
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/error.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex = "@core/textures/error.png";
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | float k = texture2D(u_tex, %in.fragcoord%.xy * vInverseInternalResolution.xy / vInverseInternalResolution.zw * 6.0).a;
9 | %constant% = vec4(k * 0.25, 0, 0, 1.0);
10 | %}
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/simple.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | source %{
4 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
5 | %}
6 | }
7 |
8 | pixel {
9 | source %{
10 | %out.color% = vec4(1.0, 1.0, 1.0, 1.0);
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_color.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | vertex {
3 | out { vec4 v_color; }
4 |
5 | source %{
6 | v_color = vColor0;
7 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
8 | %}
9 | }
10 |
11 | pixel {
12 | in { vec4 v_color; }
13 |
14 | source %{
15 | %out.color% = v_color;
16 | %}
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_texture.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_texture_2d.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = vec4(vPosition, 1.0);
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_texture_color.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out {
6 | vec4 v_color;
7 | vec2 v_uv;
8 | }
9 |
10 | source %{
11 | v_color = vColor0;
12 | v_uv = vUV0;
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 | %}
15 | }
16 |
17 | pixel {
18 | in {
19 | vec4 v_color;
20 | vec2 v_uv;
21 | }
22 |
23 | source %{
24 | %out.color% = texture2D(u_tex, v_uv) * v_color;
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_texture_cutoff.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D u_tex;
3 | float u_cutoff;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out { vec2 v_uv; }
9 |
10 | source %{
11 | v_uv = vUV0;
12 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
13 | %}
14 | }
15 |
16 | pixel {
17 | in { vec2 v_uv; }
18 |
19 | source %{
20 | vec4 ref = texture2D(u_tex, v_uv);
21 | %out.color% = vec4(max(ref.rgb - u_cutoff, 0.0), ref.a);
22 | %}
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/single_texture_fx.isl:
--------------------------------------------------------------------------------
1 | in { tex2D u_tex; }
2 |
3 | variant {
4 | vertex {
5 | out { vec2 v_uv; }
6 |
7 | source %{
8 | v_uv = vUV0;
9 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
10 | %}
11 | }
12 |
13 | pixel {
14 | in { vec2 v_uv; }
15 |
16 | source %{
17 | %out.color% = texture2D(u_tex, v_uv * vFxScale);
18 | %}
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/shaders/skybox.isl:
--------------------------------------------------------------------------------
1 | in {
2 | float u_time = 0.5;
3 | texCube u_layer0;
4 | texCube u_layer1;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out { vec2 v_uv; }
10 |
11 | source %{
12 | v_uv = (vPosition.xy * vec2(0.4, 0.4)) / vInverseViewportSize.zw;
13 | %out.position% = vec4(vPosition, 1.0);
14 | %}
15 | }
16 |
17 | pixel {
18 | in { vec2 v_uv; }
19 |
20 | source %{
21 | vec3 v = vec3(v_uv, 1.0);
22 | v = _mtx_mul(vNormalMatrix, normalize(v));
23 |
24 | %out.color% = mix(textureCube(u_layer0, v), textureCube(u_layer1, v), u_time);
25 | %}
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/default.isl:
--------------------------------------------------------------------------------
1 | variant {
2 | }
3 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | }
4 |
5 | variant {
6 | pixel {
7 | source %{
8 | %diffuse% = diffuse_color.xyz;
9 | %}
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec2 v_uv;
9 | }
10 |
11 | source %{
12 | v_uv = vUV0;
13 | %}
14 | }
15 |
16 | pixel {
17 | source %{
18 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
19 |
20 | %diffuse% = diffuse_color.xyz;
21 | %}
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map_alpha.isl:
--------------------------------------------------------------------------------
1 | surface {
2 | blend: alpha
3 | }
4 |
5 | in {
6 | tex2D diffuse_map;
7 | }
8 |
9 | variant {
10 | vertex {
11 | out {
12 | vec2 v_uv;
13 | }
14 |
15 | source %{
16 | v_uv = vUV0;
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
23 |
24 | %diffuse% = diffuse_color.xyz;
25 | %opacity% = diffuse_color.w;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map_normal_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D normal_map;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out {
9 | vec2 v_uv;
10 | vec3 v_normal;
11 | vec3 v_tangent;
12 | vec3 v_bitangent;
13 | }
14 |
15 | source %{
16 | v_uv = vUV0;
17 | v_normal = vNormal;
18 | v_tangent = vTangent;
19 | v_bitangent = vBitangent;
20 | %}
21 | }
22 |
23 | pixel {
24 | source %{
25 | vec3 n = texture2D(normal_map, v_uv).xyz;
26 |
27 | mat3 tangent_matrix = _build_mat3(normalize(v_bitangent), normalize(v_tangent), normalize(v_normal));
28 | n = n * 2.0 - 1.0;
29 | n = tangent_matrix * n;
30 | n = vNormalViewMatrix * n;
31 |
32 | %diffuse% = texture2D(diffuse_map, v_uv).xyz;
33 | %normal% = n;
34 | %}
35 | }
36 | }
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D self_map;
4 | }
5 |
6 | variant {
7 | vertex {
8 | out {
9 | vec2 v_uv;
10 | }
11 |
12 | source %{
13 | v_uv = vUV0;
14 | %}
15 | }
16 |
17 | pixel {
18 | source %{
19 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
20 | vec4 self_color = texture2D(self_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %constant% = self_color.xyz;
24 | %}
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map_specular_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 | vec4 specular_color = texture2D(specular_map, v_uv);
22 |
23 | %diffuse% = diffuse_color.xyz;
24 | %specular% = specular_color.xyz;
25 | %glossiness% = glossiness;
26 | %}
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_map_specular_map_self_map.isl:
--------------------------------------------------------------------------------
1 | in {
2 | tex2D diffuse_map;
3 | tex2D specular_map;
4 | tex2D self_map;
5 | float glossiness = 0.5;
6 | }
7 |
8 | variant {
9 | vertex {
10 | out {
11 | vec2 v_uv;
12 | }
13 |
14 | source %{
15 | v_uv = vUV0;
16 | %}
17 | }
18 |
19 | pixel {
20 | source %{
21 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
22 | vec4 specular_color = texture2D(specular_map, v_uv);
23 | vec4 self_color = texture2D(self_map, v_uv);
24 |
25 | %diffuse% = diffuse_color.xyz;
26 | %specular% = specular_color.xyz;
27 | %constant% = self_color.xyz;
28 | %glossiness% = glossiness;
29 | %}
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/diffuse_specular.isl:
--------------------------------------------------------------------------------
1 | in {
2 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
3 | vec4 specular_color = vec4(0.5,0.5,0.5,1.0) [hint:color];
4 | float glossiness = 0.5;
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %specular% = specular_color.xyz;
12 | %glossiness% = glossiness;
13 | %}
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/reflection_map_cubic.isl:
--------------------------------------------------------------------------------
1 | in {
2 | texCube cube_map;
3 | }
4 |
5 | variant {
6 | vertex {
7 | out {
8 | vec3 p;
9 | vec3 n;
10 | }
11 |
12 | source %{
13 | %out.position% = _mtx_mul(vModelViewProjectionMatrix, vec4(vPosition, 1.0));
14 |
15 | p = (vModelMatrix * vec4(vPosition, 1.0)).xyz;
16 | n = normalize(vNormalMatrix * vNormal);
17 | %}
18 | }
19 |
20 | pixel {
21 | source %{
22 | vec3 e = p - vViewPosition.xyz;
23 | vec3 r = normalize(reflect(e, normalize(n)));
24 |
25 | vec4 cube_color = textureCube(cube_map, r);
26 | %diffuse% = cube_color.xyz;
27 | %}
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/skinned_diffuse.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | vec4 diffuse_color = vec4(0.7,0.7,0.7,1.0) [hint:color];
5 | }
6 |
7 | variant {
8 | pixel {
9 | source %{
10 | %diffuse% = diffuse_color.xyz;
11 | %}
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/surfaces/skinned_diffuse_map.isl:
--------------------------------------------------------------------------------
1 | surface { skinned: 1 }
2 |
3 | in {
4 | tex2D diffuse_map;
5 | }
6 |
7 | variant {
8 | vertex {
9 | out {
10 | vec2 v_uv;
11 | }
12 |
13 | source %{
14 | v_uv = vUV0;
15 | %}
16 | }
17 |
18 | pixel {
19 | source %{
20 | vec4 diffuse_color = texture2D(diffuse_map, v_uv);
21 |
22 | %diffuse% = diffuse_color.xyz;
23 | %}
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/textures/dither.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/pkg.core/textures/dither.tga
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/textures/error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/pkg.core/textures/error.png
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/textures/noise.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/exxos-demo/python/pkg.core/textures/noise.tga
--------------------------------------------------------------------------------
/exxos-demo/python/pkg.core/version.txt:
--------------------------------------------------------------------------------
1 | 1.0.0
--------------------------------------------------------------------------------
/exxos-demo/python/screen_specs.py:
--------------------------------------------------------------------------------
1 | demo_screen_size = [1280, 720]
2 | amiga_screen_size = [320, 224]
3 |
4 |
5 | def zoom_size():
6 | return demo_screen_size[1] / amiga_screen_size[1]
--------------------------------------------------------------------------------
/fast_dot_cube/python/3d/build_velocity_tables.bat:
--------------------------------------------------------------------------------
1 | build_velocity_tables.py
2 | pause
--------------------------------------------------------------------------------
/fast_dot_cube/python/3d/obj_to_c_vectorball.bat:
--------------------------------------------------------------------------------
1 | obj_to_c_vectorball.py
2 | pause
--------------------------------------------------------------------------------
/fast_dot_cube/python/3d/util.py:
--------------------------------------------------------------------------------
1 | from math import pi
2 |
3 | def format_number(n, accuracy=6):
4 | """Formats a number in a friendly manner (removes trailing zeros and unneccesary point."""
5 |
6 | fs = "%."+str(accuracy)+"f"
7 | str_n = fs%float(n)
8 | if '.' in str_n:
9 | str_n = str_n.rstrip('0').rstrip('.')
10 | if str_n == "-0":
11 | str_n = "0"
12 | #str_n = str_n.replace("-0", "0")
13 | return str_n
14 |
15 |
16 | def lerp(a, b, i):
17 | """Linear enterpolate from a to b."""
18 | return a+(b-a)*i
--------------------------------------------------------------------------------
/fast_dot_cube/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/fast_dot_cube/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/fast_dot_cube/src/edges.h:
--------------------------------------------------------------------------------
1 | #define cube_VTX_COUNT 8
2 | const Vect3D_f16 vb_cube_vertex_pos[8];
3 |
--------------------------------------------------------------------------------
/fast_dot_cube/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/fast_dot_cube/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_dot_cube/src/out/rom.bin
--------------------------------------------------------------------------------
/fast_dot_cube/src/res/fast_cube_dot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_dot_cube/src/res/fast_cube_dot.png
--------------------------------------------------------------------------------
/fast_dot_cube/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const SpriteDefinition fast_cube_dot;
5 | extern const Image marble_background;
6 | extern const Image marble_foreground;
7 |
8 | #endif // _GFX_H_
9 |
--------------------------------------------------------------------------------
/fast_dot_cube/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | SPRITE fast_cube_dot "fast_cube_dot.png" 1 1 -1
2 | IMAGE marble_background "marble_background.png" -1
3 | IMAGE marble_foreground "marble_foreground.png" -1
--------------------------------------------------------------------------------
/fast_dot_cube/src/res/marble_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_dot_cube/src/res/marble_background.png
--------------------------------------------------------------------------------
/fast_dot_cube/src/velocity_table.c:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "../../src/velocity_table.h"
3 |
4 | const s8 vel_table[VEL_TABLE_LEN][VEL_TABLE_LEN] = {
5 | { 0, 0, 1, 1, 2, 3, 3, 3, },
6 |
7 | { 0, 0, 0, 1, 2, 3, 3, 4, },
8 |
9 | { 6, 0, 0, 1, 2, 3, 4, 4, },
10 |
11 | { 6, 6, 6, 0, 2, 4, 5, 5, },
12 |
13 | { 6, 6, 6, 6, 2, 6, 6, 6, },
14 |
15 | { 6, 6, 6, 0, 2, 4, 5, 5, },
16 |
17 | { 6, 0, 0, 1, 2, 3, 4, 4, },
18 |
19 | { 0, 0, 0, 1, 2, 3, 3, 4, },
20 | };
21 |
--------------------------------------------------------------------------------
/fast_dot_cube/src/velocity_table.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #define VEL_TABLE_LEN 8
3 |
4 | extern const s8 vel_table[VEL_TABLE_LEN][VEL_TABLE_LEN];
5 |
--------------------------------------------------------------------------------
/fast_starfield/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/fast_starfield/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/fast_starfield/src/easing_table.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define EASING_TABLE_LEN 1024
4 |
5 | const u16 easing_table[EASING_TABLE_LEN];
6 |
--------------------------------------------------------------------------------
/fast_starfield/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/fast_starfield/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image starfield;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/fast_starfield/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE starfield "starfield.png" 0
--------------------------------------------------------------------------------
/fast_starfield/src/res/starfield.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield/src/res/starfield.png
--------------------------------------------------------------------------------
/fast_starfield/src/transition_helper.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "easing_table.h"
3 |
4 | #ifndef TRANSITION_HELPER
5 | #define TRANSITION_HELPER
6 |
7 | #define RSE_FRAMES(A) ((A*60)/framerate)
8 |
9 | void RSE_turn_screen_to_white(void);
10 | void RSE_turn_screen_to_black(void);
11 | void RSE_pause(u16 frames);
12 | void RSE_clearTileRowB(u16 row);
13 | void RSE_clearTileRowA(u16 row);
14 | void RSE_resetScrolling(void);
15 |
16 | #endif
17 |
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/amiga-font.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield_w_donuts/src/res/amiga-font.png
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/donut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield_w_donuts/src/res/donut.png
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _RES_GFX_H_
2 | #define _RES_GFX_H_
3 |
4 | extern const Image starfield;
5 | extern const Image vip_logo;
6 | extern const SpriteDefinition donut;
7 | extern const Image amiga_font;
8 |
9 | #endif // _RES_GFX_H_
10 |
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE starfield "starfield.png" -1
2 | IMAGE vip_logo "news-vip2017.png" -1
3 | SPRITE donut "donut.png" 4 4 -1 5
4 | IMAGE amiga_font "amiga-font.png" -1
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/maak_soundtest01_20160211.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield_w_donuts/src/res/maak_soundtest01_20160211.vgm
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/news-vip2017.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield_w_donuts/src/res/news-vip2017.png
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RES_RESOURCES_H_
2 | #define _RES_RESOURCES_H_
3 |
4 | extern const u8 maak_music_2[11449];
5 |
6 | #endif // _RES_RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM maak_music_2 "maak_soundtest01_20160211.vgm"
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/res/starfield.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fast_starfield_w_donuts/src/res/starfield.png
--------------------------------------------------------------------------------
/fast_starfield_w_donuts/src/transition_helper.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | // #include "easing_table.h"
3 |
4 | #ifndef TRANSITION_HELPER
5 | #define TRANSITION_HELPER
6 |
7 | #define RSE_FRAMES(A) ((A*60)/framerate)
8 |
9 | const u16 palette_white[16];
10 |
11 | void RSE_turn_screen_to_white(void);
12 | void RSE_turn_screen_to_black(void);
13 | void RSE_turn_screen_to_color(u16 col);
14 | void RSE_pause(u16 frames);
15 | void RSE_clearTileRowB(u16 row);
16 | void RSE_clearTileRowA(u16 row);
17 | void RSE_resetScrolling(void);
18 | void RSE_clearTileRowAPrioTrue(u16 row);
19 |
20 | #endif
21 |
--------------------------------------------------------------------------------
/fullscreen_image_display/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/fullscreen_image_display/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/fullscreen_image_display/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/fullscreen_image_display/src/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | static void displayFullScreenPicture();
5 |
6 | int main(){
7 | displayFullScreenPicture();
8 | return 0;
9 | }
10 |
11 | static void displayFullScreenPicture(){
12 | u16 vramIndex = TILE_USERINDEX;
13 |
14 | VDP_clearPlan(APLAN, 0);
15 | VDP_clearPlan(BPLAN, 0);
16 | /* Set a larger tileplan to be able to scroll */
17 | VDP_setPlanSize(64, 32);
18 | SYS_disableInts();
19 |
20 | /* Draw the background */
21 | VDP_drawImageEx(BPLAN, &shikasta_tilemap, TILE_ATTR_FULL(PAL0, TRUE, FALSE, FALSE, vramIndex), 0, 0, TRUE, TRUE);
22 | vramIndex += shikasta_tilemap.tileset->numTile;
23 |
24 | SYS_enableInts();
25 |
26 | while (1){
27 | VDP_waitVSync();
28 | }
29 | }
--------------------------------------------------------------------------------
/fullscreen_image_display/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image shikasta_tilemap;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/fullscreen_image_display/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE shikasta_tilemap "shikasta_tilemap.png" -1
--------------------------------------------------------------------------------
/fullscreen_image_display/src/res/shikasta_tilemap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/fullscreen_image_display/src/res/shikasta_tilemap.png
--------------------------------------------------------------------------------
/merge/src/RSE_Logo3DScreen.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define RSE_LOGO_3D_MAX_POINTS 256
4 |
5 | #define RSE_COPY_VECTOR2D(D, S) D.x = S.x; D.y = S.y
6 |
7 | #define RSE_LOGO_3D_LOAD_MESH(mesh_name) \
8 | mesh_coord = mesh_name ## _coord; \
9 | mesh_poly_ind = mesh_name ## _poly_ind; \
10 | mesh_line_ind = mesh_name ## _line_ind; \
11 | mesh_face_norm = mesh_name ## _face_norm; \
12 | vtx_count = mesh_name ## _VTX_COUNT; \
13 | poly_count = mesh_name ## _FACE_COUNT;
--------------------------------------------------------------------------------
/merge/src/RSE_easing_table.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define EASING_TABLE_LEN 512
4 |
5 | extern const unsigned short easing_fp[EASING_TABLE_LEN];
6 | extern const fix16 easing_fix16[EASING_TABLE_LEN];
7 |
--------------------------------------------------------------------------------
/merge/src/RSE_logo_meshs.h:
--------------------------------------------------------------------------------
1 | #define logo_e_VTX_COUNT 78
2 | #define logo_e_FACE_COUNT 19
3 | const Vect3D_f16 logo_e_coord[78];
4 | const short logo_e_poly_ind[76];
5 | const u16 logo_e_line_ind[64];
6 | const Vect3D_f16 logo_e_face_norm[19];
7 |
8 | #define logo_r_VTX_COUNT 72
9 | #define logo_r_FACE_COUNT 19
10 | const Vect3D_f16 logo_r_coord[72];
11 | const short logo_r_poly_ind[76];
12 | const u16 logo_r_line_ind[54];
13 | const Vect3D_f16 logo_r_face_norm[19];
14 |
15 | #define logo_s_VTX_COUNT 72
16 | #define logo_s_FACE_COUNT 22
17 | const Vect3D_f16 logo_s_coord[72];
18 | const short logo_s_poly_ind[88];
19 | const u16 logo_s_line_ind[60];
20 | const Vect3D_f16 logo_s_face_norm[22];
21 |
22 |
--------------------------------------------------------------------------------
/merge/src/ball_coords.h:
--------------------------------------------------------------------------------
1 | #define geosphere_VTX_COUNT 42
2 | const Vect3D_f16 vb_geosphere_vertex_pos[42];
3 | #define grid_cube_VTX_COUNT 100
4 | const Vect3D_f16 vb_grid_cube_vertex_pos[100];
5 | #define grid_cube_small_VTX_COUNT 27
6 | const Vect3D_f16 vb_grid_cube_small_vertex_pos[27];
7 |
--------------------------------------------------------------------------------
/merge/src/main_axelay_fx.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_AXELAY_FX_H
3 | #define MAIN_AXELAY_FX_H
4 |
5 | #define TABLE_LEN 512
6 |
7 | void main_axelay_fx(u16 vbl_to_exit);
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/merge/src/main_boing_ball_fx.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_BOING_BALL_FX_H
3 | #define MAIN_BOING_BALL_FX_H
4 |
5 | #define SCR_H ((224 >> 3) << 3)
6 | #define BOARD_Y (((SCR_H - 120) >> 3) - 1)
7 | #define BACK_SPEED 8
8 | #define TABLE_LEN SCR_H
9 | #define PERSPECTIVE_STEP 64
10 |
11 | void main_boing_ball_fx(u16 vbl_to_exit);
12 |
13 | #endif
14 |
--------------------------------------------------------------------------------
/merge/src/main_logo.h:
--------------------------------------------------------------------------------
1 | #ifndef MAIN_LOGO_H
2 | #define MAIN_LOGO_H
3 |
4 | extern Mat3D_f16 MatInv;
5 | extern Mat3D_f16 Mat;
6 |
7 | void main_logo(u16 vbl_to_exit);
8 |
9 |
10 | #endif
11 |
--------------------------------------------------------------------------------
/merge/src/main_starfield_2d.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_STARFIELD_2D_H
3 | #define MAIN_STARFIELD_2D_H
4 |
5 | #define MAX_STAR 512
6 | #define BMP_CELLWIDTH_SFT 5
7 | #define BMP_PITCH_SFT (BMP_CELLWIDTH_SFT + 2)
8 | #define BMP_PITCH (1 << BMP_PITCH_SFT)
9 |
10 | typedef struct
11 | {
12 | Vect2D_u16 pos;
13 | Vect2D_u16 mov;
14 | u16 col;
15 | } _star;
16 |
17 | void main_starfield_2d(u16 vbl_to_exit);
18 |
19 | #endif
20 |
--------------------------------------------------------------------------------
/merge/src/main_tunnel.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_TUNNEL_H
3 | #define MAIN_TUNNEL_H
4 |
5 | #define CIRCLE_MAX 5 //5
6 | #define CIRCLE_RES 9 //9
7 | #define PIXEL_MAX 45 //CIRCLE_MAX x CIRCLE_RES 45
8 | #define LINE_MAX 45 //CIRCLE_MAX x CIRCLE_RES 45
9 |
10 | #define _PIXEL_ON 0
11 | #define _LINE_ON 1
12 |
13 | typedef struct Circle_ Circle_;
14 | struct Circle_{
15 | s16 x;
16 | s16 y;
17 | s16 size;
18 | u16 col;
19 | u16 res;
20 | };
21 |
22 | void main_tunnel(u16 vbl_to_exit);
23 |
24 | #endif
25 |
--------------------------------------------------------------------------------
/merge/src/main_twisted_metal.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_TWISTED_METAL_H
3 | #define MAIN_TWISTED_METAL_H
4 |
5 | #define TWISTER_TABLE_SIZE 1024
6 | #define CST_CTRL_PORT 0xC00004
7 | #define CST_DATA_PORT 0xC00000
8 | #define CST_WRITE_VSRAM_ADDR(adr) ((0x4000 + ((adr) & 0x3FFF)) << 16) + (((adr) >> 14) | 0x10)
9 |
10 | void main_twisted_metal(u16 vbl_to_exit);
11 |
12 | #endif
13 |
--------------------------------------------------------------------------------
/merge/src/main_underwater_starfield_fx.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_UNDERWATER_STARFIELD_H
3 | #define MAIN_UNDERWATER_STARFIELD_H
4 |
5 | #define MAX_STAR 48
6 | #define STARFIELD_SIZE (0xFF >> 1)
7 | #define STARFIELD_DIST -64
8 |
9 | typedef struct
10 | {
11 | s16 x,y,z;
12 | u16 mov;
13 | u16 col;
14 | } _star;
15 |
16 | void main_underwater_starfield_fx(u16 vbl_to_exit);
17 |
18 | #endif
19 |
--------------------------------------------------------------------------------
/merge/src/main_vector_balls.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef MAIN_VECTOR_BALLS_H
3 | #define MAIN_VECTOR_BALLS_H
4 |
5 | #define MAX_VECTOR_BALL 256
6 | #define BALL_COUNT geosphere_VTX_COUNT
7 | #define VECTOR_BALL_ARRAY vb_geosphere_vertex_pos
8 |
9 | void main_vector_balls(u16 vbl_to_exit);
10 |
11 |
12 | #endif
13 |
--------------------------------------------------------------------------------
/merge/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/merge/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/ball_metal.png
--------------------------------------------------------------------------------
/merge/src/res/boing_impact-8.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/boing_impact-8.wav
--------------------------------------------------------------------------------
/merge/src/res/boingball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/boingball.png
--------------------------------------------------------------------------------
/merge/src/res/checkback.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/checkback.png
--------------------------------------------------------------------------------
/merge/src/res/checkboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/checkboard.png
--------------------------------------------------------------------------------
/merge/src/res/clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/clouds.png
--------------------------------------------------------------------------------
/merge/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image logo_rse_3d;
5 | extern const Image sea;
6 | extern const Image clouds;
7 | extern const Image underwater;
8 | extern const SpriteDefinition sprite_stars;
9 | extern const Image checkboard;
10 | extern const Image checkback;
11 | extern const Image boingball;
12 | extern const Image twister;
13 | extern const SpriteDefinition ball_metal;
14 |
15 | #endif // _GFX_H_
16 |
--------------------------------------------------------------------------------
/merge/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE logo_rse_3d "logo_rse_3d.png" 0
2 | IMAGE sea "sea.png" 0
3 | IMAGE clouds "clouds.png" 0
4 | IMAGE underwater "underwater.png" 0
5 | SPRITE sprite_stars "sprite_stars.png" 1 1 0
6 | IMAGE checkboard "checkboard.png" 0
7 | IMAGE checkback "checkback.png" 0
8 | IMAGE boingball "boingball.png" 0
9 | IMAGE twister "twister.png" -1
10 | SPRITE ball_metal "ball_metal.png" 2 2 -1
11 |
12 |
--------------------------------------------------------------------------------
/merge/src/res/logo_boot.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/logo_boot.vgm
--------------------------------------------------------------------------------
/merge/src/res/logo_rse_3d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/logo_rse_3d.png
--------------------------------------------------------------------------------
/merge/src/res/music.h:
--------------------------------------------------------------------------------
1 | #ifndef _MUSIC_H_
2 | #define _MUSIC_H_
3 |
4 | extern const u8 logo_boot_music[40827];
5 |
6 | #endif // _MUSIC_H_
7 |
--------------------------------------------------------------------------------
/merge/src/res/music.res:
--------------------------------------------------------------------------------
1 | VGM logo_boot_music "logo_boot.vgm"
2 |
--------------------------------------------------------------------------------
/merge/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 boing_impact[19456];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/merge/src/res/resources.res:
--------------------------------------------------------------------------------
1 | WAV boing_impact "boing_impact-8.wav" 0 8000
--------------------------------------------------------------------------------
/merge/src/res/sea.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/sea.png
--------------------------------------------------------------------------------
/merge/src/res/sprite_stars.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/sprite_stars.png
--------------------------------------------------------------------------------
/merge/src/res/twister.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/twister.png
--------------------------------------------------------------------------------
/merge/src/res/underwater.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/merge/src/res/underwater.png
--------------------------------------------------------------------------------
/outline_intro/ball_coords.h:
--------------------------------------------------------------------------------
1 | #define grid_cube_small_VTX_COUNT 20
2 | const Vect3D_f16 vb_grid_cube_small_vertex_pos[20];
3 |
--------------------------------------------------------------------------------
/outline_intro/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/outline_intro/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/outline_intro/demo_strings.h:
--------------------------------------------------------------------------------
1 | #ifndef RSE_DEMO_STRINGS
2 | #define RSE_DEMO_STRINGS
3 |
4 | extern char **demo_strings;
5 | extern const char *strings_logo_0[];
6 | extern const char *strings_sim_0[];
7 | extern const char *strings_sim_1[];
8 | extern const char *strings_sim_2[];
9 | extern const char *strings_sim_3[];
10 | extern const char *strings_sim_4[];
11 | extern const char *strings_sim_5[];
12 | extern const char *strings_credits[];
13 | extern const char *strings_greets[];
14 | extern const char *strings_end[];
15 |
16 | #endif
17 |
--------------------------------------------------------------------------------
/outline_intro/easing_table.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define EASING_TABLE_LEN 1024
4 |
5 | const u16 easing_table[EASING_TABLE_LEN];
6 |
--------------------------------------------------------------------------------
/outline_intro/img_seq.h:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | #define TILE_BITS 4
5 | #define TILE_STEPS 16
6 |
7 | /* tore_tunnel */
8 | #define tore_tunnel_IMG_COUNT 16
9 | #define tore_tunnel_IMG_LEN 300
10 |
11 | const u16 tore_tunnel_seq[4800];
12 |
13 | /* star_tunnel */
14 | #define star_tunnel_IMG_COUNT 16
15 | #define star_tunnel_IMG_LEN 300
16 |
17 | const u16 star_tunnel_seq[4800];
18 |
19 |
--------------------------------------------------------------------------------
/outline_intro/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/outline_intro/logo_screen.h:
--------------------------------------------------------------------------------
1 | #ifndef LOGO_SCREEN
2 | #define LOGO_SCREEN
3 |
4 | #define SCR_W 320
5 | #define SCR_H 224
6 | #define NUM_COLUMNS 64
7 | #define NUM_ROWS 28
8 | #define NUM_LINES NUM_ROWS * 8
9 | #define SPOTLIGHT_WIDTH 1
10 | #define NUM_SPOTLIGHTS NUM_COLUMNS / SPOTLIGHT_WIDTH
11 | #define LOGO_W 256
12 | #define LOGO_H 56
13 |
14 | #define LOGO_DEMO_W 320
15 | #define LOGO_DEMO_H 80
16 |
17 | #define LOGO_CHAR_W 112
18 | #define LOGO_CHAR_H 80
19 |
20 | #endif
21 |
--------------------------------------------------------------------------------
/outline_intro/music.c:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "resources.h"
3 |
4 | void play_music(void)
5 | {
6 | SND_startPlay_XGM(malabar_bumper);
7 | SND_setMusicTempo_XGM(50);
8 | }
9 |
10 | void stop_music(void)
11 | { SND_stopPlay_XGM(); }
12 |
--------------------------------------------------------------------------------
/outline_intro/music.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | void play_music(void);
4 | void stop_music(void);
5 |
--------------------------------------------------------------------------------
/outline_intro/python/build_easing_table.bat:
--------------------------------------------------------------------------------
1 | build_easing_table.py
2 | pause
--------------------------------------------------------------------------------
/outline_intro/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/outline_intro/res/alexkidd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/alexkidd.png
--------------------------------------------------------------------------------
/outline_intro/res/alexkidd_overlay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/alexkidd_overlay.png
--------------------------------------------------------------------------------
/outline_intro/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/ball_metal.png
--------------------------------------------------------------------------------
/outline_intro/res/childwrite_8x8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/childwrite_8x8.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_a.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_a_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_a_2.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_a_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_a_3.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_a_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_a_4.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_b.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_b_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_b_2.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_b_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_b_3.png
--------------------------------------------------------------------------------
/outline_intro/res/endscreen_b_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/endscreen_b_4.png
--------------------------------------------------------------------------------
/outline_intro/res/level_0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/level_0.png
--------------------------------------------------------------------------------
/outline_intro/res/level_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/level_1.png
--------------------------------------------------------------------------------
/outline_intro/res/level_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/level_2.png
--------------------------------------------------------------------------------
/outline_intro/res/level_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/level_3.png
--------------------------------------------------------------------------------
/outline_intro/res/level_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/level_bg.png
--------------------------------------------------------------------------------
/outline_intro/res/logo_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/logo_demo.png
--------------------------------------------------------------------------------
/outline_intro/res/logo_rse_bottom_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/logo_rse_bottom_9bits.png
--------------------------------------------------------------------------------
/outline_intro/res/logo_rse_top_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/logo_rse_top_9bits.png
--------------------------------------------------------------------------------
/outline_intro/res/malabar_bumper.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/malabar_bumper.vgm
--------------------------------------------------------------------------------
/outline_intro/res/pat_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/pat_round.png
--------------------------------------------------------------------------------
/outline_intro/res/plasma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/plasma.png
--------------------------------------------------------------------------------
/outline_intro/res/plasma_greetings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/plasma_greetings.png
--------------------------------------------------------------------------------
/outline_intro/res/rasters.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/rasters.png
--------------------------------------------------------------------------------
/outline_intro/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 malabar_bumper[235796];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/outline_intro/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM malabar_bumper "malabar_bumper.vgm"
--------------------------------------------------------------------------------
/outline_intro/res/smiley-gelmir.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/smiley-gelmir.png
--------------------------------------------------------------------------------
/outline_intro/res/transition_pattern_0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/transition_pattern_0.png
--------------------------------------------------------------------------------
/outline_intro/res/vectorball_bg_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/vectorball_bg_a.png
--------------------------------------------------------------------------------
/outline_intro/res/vectorball_bg_a_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/vectorball_bg_a_2.png
--------------------------------------------------------------------------------
/outline_intro/res/vectorball_bg_b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/vectorball_bg_b.png
--------------------------------------------------------------------------------
/outline_intro/res/vectorball_bg_b_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/vectorball_bg_b_2.png
--------------------------------------------------------------------------------
/outline_intro/res/vectorball_fg_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/res/vectorball_fg_a.png
--------------------------------------------------------------------------------
/outline_intro/transition_helper.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "easing_table.h"
3 |
4 | #ifndef TRANSITION_HELPER
5 | #define TRANSITION_HELPER
6 |
7 | #define RSE_FRAMES(A) ((A*60)/framerate)
8 |
9 | void RSE_turn_screen_to_white(void);
10 | void RSE_turn_screen_to_black(void);
11 | void RSE_pause(u16 frames);
12 | void RSE_clearTileRowB(u16 row);
13 | void RSE_clearTileRowA(u16 row);
14 | void RSE_resetScrolling(void);
15 | void RSE_clearAll(void);
16 |
17 | #endif
18 |
--------------------------------------------------------------------------------
/outline_intro/twister_fx.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define TWISTER_TABLE_SIZE 1024
4 | #define CST_CTRL_PORT 0xC00004
5 | #define CST_DATA_PORT 0xC00000
6 | #define CST_WRITE_VSRAM_ADDR(adr) ((0x4000 + ((adr) & 0x3FFF)) << 16) + (((adr) >> 14) | 0x10)
7 |
8 | // void initTwisterFx(void);
9 | // void updateTwisterFx(u16 vcount_init, u16 duration);
10 | // void disableTwisterFx(void);
--------------------------------------------------------------------------------
/outline_intro/wipe_effect.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include
3 |
4 | void transition_fx(u8 frames, u16 vramindex_start);
--------------------------------------------------------------------------------
/outline_intro/work/VGM/malabars_bumper-04.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/malabars_bumper-04.vge
--------------------------------------------------------------------------------
/outline_intro/work/VGM/malabars_bumper-05.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/malabars_bumper-05.vge
--------------------------------------------------------------------------------
/outline_intro/work/VGM/malabars_bumper-06.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/malabars_bumper-06.vge
--------------------------------------------------------------------------------
/outline_intro/work/VGM/malabars_bumper-08.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/malabars_bumper-08.vge
--------------------------------------------------------------------------------
/outline_intro/work/VGM/malabars_bumper-09.vge:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/malabars_bumper-09.vge
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 01.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 01.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 02.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 02.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 03.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 03.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 04.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 04.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 05.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 05.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 06.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 06.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 07.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 07.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_00 slice 08.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_00 slice 08.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 01.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 01.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 02.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 02.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 03.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 03.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 04.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 04.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 05.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 05.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 06.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 06.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 07.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 07.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_01 slice 08.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_01 slice 08.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 01.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 01.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 02.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 02.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 03.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 03.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 04.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 04.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 05.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 05.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 06.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 06.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 07.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 07.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_02 slice 08.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_02 slice 08.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 01.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 01.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 02.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 02.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 03.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 03.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 04.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 04.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 05.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 05.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 06.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 06.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 07.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 07.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/smp/loop_03 slice 08.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/VGM/smp/loop_03 slice 08.wav
--------------------------------------------------------------------------------
/outline_intro/work/VGM/tfi/bass.tfi:
--------------------------------------------------------------------------------
1 | > !
--------------------------------------------------------------------------------
/outline_intro/work/VGM/tfi/bells.tfi:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/outline_intro/work/VGM/tfi/clav_funk.tfi:
--------------------------------------------------------------------------------
1 | ,
2 |
--------------------------------------------------------------------------------
/outline_intro/work/VGM/tfi/lead.tfi:
--------------------------------------------------------------------------------
1 | )
--------------------------------------------------------------------------------
/outline_intro/work/logo_rse/logo_rse_vector.ai:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/logo_rse/logo_rse_vector.ai
--------------------------------------------------------------------------------
/outline_intro/work/logo_rse/rse_logo_smaller.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/outline_intro/work/logo_rse/rse_logo_smaller.psd
--------------------------------------------------------------------------------
/parallax_scrolling/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/parallax_scrolling/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/parallax_scrolling/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/parallax_scrolling/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/parallax_scrolling/src/out/rom.bin
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/parallax_scrolling/src/res/ball_metal.png
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image ground;
5 | extern const Image rse_logo;
6 |
7 | #endif // _GFX_H_
8 |
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE ground "ground.png" 0
2 | IMAGE rse_logo "rse_logo.png" 0
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/ground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/parallax_scrolling/src/res/ground.png
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/midnight.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/parallax_scrolling/src/res/midnight.vgm
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 midnight[106096];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM midnight "midnight.vgm"
--------------------------------------------------------------------------------
/parallax_scrolling/src/res/rse_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/parallax_scrolling/src/res/rse_logo.png
--------------------------------------------------------------------------------
/perspective_checkerboard/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/perspective_checkerboard/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/perspective_checkerboard/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/perspective_checkerboard/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/perspective_checkerboard/src/out/rom.bin
--------------------------------------------------------------------------------
/perspective_checkerboard/src/res/checkboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/perspective_checkerboard/src/res/checkboard.png
--------------------------------------------------------------------------------
/perspective_checkerboard/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image checkboard;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/perspective_checkerboard/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE checkboard "checkboard.png" 0
--------------------------------------------------------------------------------
/pirate_intro/src/Logo3DScreen.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define RSE_LOGO_3D_MAX_POINTS 256
4 |
5 | #define RSE_COPY_VECTOR2D(D, S) D.x = S.x; D.y = S.y
6 |
7 | #define RSE_LOGO_3D_LOAD_MESH(mesh_name) mesh_coord = mesh_name ## _coord; mesh_poly_ind = mesh_name ## _poly_ind; mesh_face_norm = mesh_name ## _face_norm; vtx_count = mesh_name ## _VTX_COUNT; poly_count = mesh_name ## _FACE_COUNT;
8 |
--------------------------------------------------------------------------------
/pirate_intro/src/asm.bat:
--------------------------------------------------------------------------------
1 | del dump_asm.txt
2 | del out\* /s /f /q
3 | del out\*.* /s /f /q
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile_asm.gen > asm_src.txt
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/pirate_intro/src/ball_coords.h:
--------------------------------------------------------------------------------
1 | #define grid_cube_small_VTX_COUNT 20
2 | const Vect3D_f16 vb_grid_cube_small_vertex_pos[20];
3 | #define pyramid_VTX_COUNT 20
4 | const Vect3D_f16 vb_pyramid_vertex_pos[20];
5 | #define sword_VTX_COUNT 20
6 | const Vect3D_f16 vb_sword_vertex_pos[20];
7 |
8 | #define MAX_VTX_COUNT 20
9 | #define MAX_VBALL_OBJECTS 3
10 |
--------------------------------------------------------------------------------
/pirate_intro/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/pirate_intro/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/pirate_intro/src/demo_strings.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | extern const char *demo_strings;
4 | extern const char *strings_greets[];
5 |
--------------------------------------------------------------------------------
/pirate_intro/src/div_premul.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define DIV_PREMUL_LEN 4096
4 |
5 | const s16 div_table[DIV_PREMUL_LEN];
6 |
--------------------------------------------------------------------------------
/pirate_intro/src/easing_table.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define EASING_TABLE_LEN 1024
4 |
5 | const u16 easing_table[EASING_TABLE_LEN];
6 |
--------------------------------------------------------------------------------
/pirate_intro/src/easing_table_fp.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | #define EASING_TABLE_LEN_FP 512
4 |
5 | extern const unsigned short easing_fp[EASING_TABLE_LEN_FP];
6 | extern const fix16 easing_fix16[EASING_TABLE_LEN_FP];
7 |
--------------------------------------------------------------------------------
/pirate_intro/src/logo_meshs.h:
--------------------------------------------------------------------------------
1 | #define logo_e_VTX_COUNT 78
2 | #define logo_e_FACE_COUNT 19
3 | const Vect3D_f16 logo_e_coord[78];
4 | const short logo_e_poly_ind[76];
5 | const u16 logo_e_line_ind[64];
6 | const Vect3D_f16 logo_e_face_norm[19];
7 |
8 | #define logo_r_VTX_COUNT 72
9 | #define logo_r_FACE_COUNT 19
10 | const Vect3D_f16 logo_r_coord[72];
11 | const short logo_r_poly_ind[76];
12 | const u16 logo_r_line_ind[54];
13 | const Vect3D_f16 logo_r_face_norm[19];
14 |
15 | #define logo_s_VTX_COUNT 72
16 | #define logo_s_FACE_COUNT 22
17 | const Vect3D_f16 logo_s_coord[72];
18 | const short logo_s_poly_ind[88];
19 | const u16 logo_s_line_ind[60];
20 | const Vect3D_f16 logo_s_face_norm[22];
21 |
22 |
--------------------------------------------------------------------------------
/pirate_intro/src/main_logo.h:
--------------------------------------------------------------------------------
1 | #ifndef MAIN_LOGO_H
2 | #define MAIN_LOGO_H
3 |
4 | extern Mat3D_f16 MatInv;
5 | extern Mat3D_f16 Mat;
6 |
7 | void main_logo(void);
8 |
9 |
10 | #endif
11 |
--------------------------------------------------------------------------------
/pirate_intro/src/music.c:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "resources.h"
3 |
4 | void play_intro_sound(void)
5 | {
6 | SND_startPlay_XGM(logo_boot_music);
7 | SND_setMusicTempo_XGM(50);
8 | }
9 |
10 | void play_music(void)
11 | {
12 | SND_startPlay_XGM(vgm_music);
13 | SND_setMusicTempo_XGM(50);
14 | }
15 |
16 | void stop_music(void)
17 | { SND_stopPlay_XGM(); }
18 |
--------------------------------------------------------------------------------
/pirate_intro/src/music.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | void play_intro_sound(void);
4 | void play_music(void);
5 | void stop_music(void);
6 |
--------------------------------------------------------------------------------
/pirate_intro/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/pirate_intro/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/ball_metal.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/ball_shadow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/ball_shadow.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/ball_transition.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/ball_transition.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_back-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_back-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_back-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_back-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_back-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_back-2.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_back-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_back-3.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_back.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/barb_pic_front.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/barb_pic_front.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/bg_sky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/bg_sky.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/btiger_font.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/btiger_font.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard-2.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard-3.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/checkboard_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/checkboard_logo.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/conan-on-fire_256px-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/conan-on-fire_256px-small.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/cube_anim.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/cube_anim.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/cube_anim_shadow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/cube_anim_shadow.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-back-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-back-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-back-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-back-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-back-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-back-2.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-back-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-back-3.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-front-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-front-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-front-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-front-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-front-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-front-2.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-front-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-front-3.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/exocet-ankou-front-darken.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/exocet-ankou-front-darken.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/flames-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/flames-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/flames-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/flames-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/flames-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/flames-2.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/flames-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/flames-3.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/flames.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/flames.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/logo_boot.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/logo_boot.vgm
--------------------------------------------------------------------------------
/pirate_intro/src/res/logo_rse_3d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/logo_rse_3d.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/masiaka001.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/masiaka001.vgm
--------------------------------------------------------------------------------
/pirate_intro/src/res/masiaka_title.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/masiaka_title.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/medieval_girl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/medieval_girl.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RES_RESOURCES_H_
2 | #define _RES_RESOURCES_H_
3 |
4 | extern const u8 logo_boot_music[32507];
5 | extern const u8 vgm_music[32156];
6 |
7 | #endif // _RES_RESOURCES_H_
8 |
--------------------------------------------------------------------------------
/pirate_intro/src/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM logo_boot_music "logo_boot.vgm"
2 | XGM vgm_music "masiaka001.vgm"
--------------------------------------------------------------------------------
/pirate_intro/src/res/rse_logo_shadow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/rse_logo_shadow.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/rse_retrowave_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/rse_retrowave_logo.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/rsi_logo-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/rsi_logo-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/rsi_logo-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/rsi_logo-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/rsi_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/rsi_logo.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/shield_anim-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/shield_anim-0.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/shield_anim-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/shield_anim-1.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/shield_anim.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/shield_anim.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/sky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/sky.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/sprite_stars.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/sprite_stars.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/sword.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/sword.png
--------------------------------------------------------------------------------
/pirate_intro/src/res/transition_pattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/src/res/transition_pattern.png
--------------------------------------------------------------------------------
/pirate_intro/src/string_parser.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "genesis.h"
4 |
5 | #define FONT_PUNCT_OFFSET 36
6 | #define FONT_LINE_OFFSET ((432 >> 3))
7 |
8 | u16 computeStringLen(char *str);
9 | u16 charToTileIndex(char c);
--------------------------------------------------------------------------------
/pirate_intro/src/writer.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | extern u8 letter_width;
4 | extern u16 current_char;
5 | extern VDPPlan current_plan;
6 | extern u8 current_pal;
7 | extern u8 scroll_speed;
8 | extern s16 scroll_x_offset;
9 | extern u8 scroll_local_offset;
10 |
11 | #ifndef RSE_WRITER
12 | #define RSE_WRITER
13 |
14 | u16 RSE_writerSetup(void);
15 | void RSE_writerSetY(u16 initial_y);
16 | void updateScrollText(void);
17 |
18 | #endif
19 |
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/build_fp_cosine_tables.bat:
--------------------------------------------------------------------------------
1 | build_fp_cosine_tables.py
2 | pause
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/obj_to_c_vectorball.bat:
--------------------------------------------------------------------------------
1 | obj_to_c_vectorball.py
2 | pause
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/util.py:
--------------------------------------------------------------------------------
1 | from math import pi
2 |
3 | def format_number(n, accuracy=6):
4 | """Formats a number in a friendly manner (removes trailing zeros and unneccesary point."""
5 |
6 | fs = "%."+str(accuracy)+"f"
7 | str_n = fs%float(n)
8 | if '.' in str_n:
9 | str_n = str_n.rstrip('0').rstrip('.')
10 | if str_n == "-0":
11 | str_n = "0"
12 | #str_n = str_n.replace("-0", "0")
13 | return str_n
14 |
15 |
16 | def lerp(a, b, i):
17 | """Linear enterpolate from a to b."""
18 | return a+(b-a)*i
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/geosphere.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/3d/vectorballs/geosphere.max
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/geosphere.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 30.11.2016 10:09:39
3 |
4 | newmtl wire_153228153
5 | Ns 32
6 | d 1
7 | Tr 0
8 | Tf 1 1 1
9 | illum 2
10 | Ka 0.600000023842 0.894117712975 0.600000023842
11 | Kd 0.600000023842 0.894117712975 0.600000023842
12 | Ks 0.349999994040 0.349999994040 0.349999994040
13 |
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/grid_cube.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/3d/vectorballs/grid_cube.max
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/grid_cube.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 30.11.2016 10:22:25
3 |
4 | newmtl _cubeDefault
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/grid_cube_small.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/3d/vectorballs/grid_cube_small.max
--------------------------------------------------------------------------------
/pirate_intro/tools/3d/vectorballs/grid_cube_small.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 30.11.2016 09:23:22
3 |
4 | newmtl _cubeDefault
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/OpenAL32.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/OpenAL32.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/bullet_physic_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/bullet_physic_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/harfang_lua.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/harfang_lua.exe
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/ijg_picture_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/ijg_picture_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/imgui.ini:
--------------------------------------------------------------------------------
1 | [Debug]
2 | Pos=60,60
3 | Size=400,400
4 | Collapsed=0
5 |
6 | [GUI]
7 | Pos=37,11
8 | Size=350,278
9 | Collapsed=0
10 |
11 |
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/openvr_api.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/openvr_api.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/openvr_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/openvr_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/start.bat:
--------------------------------------------------------------------------------
1 | harfang_lua.exe main.lua
2 | pause
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/stb_audio_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/stb_audio_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/stb_picture_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/stb_picture_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/wav_audio_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/wav_audio_plugin.dll
--------------------------------------------------------------------------------
/pirate_intro/tools/vector_ball_editor/xmp_audio_plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/pirate_intro/tools/vector_ball_editor/xmp_audio_plugin.dll
--------------------------------------------------------------------------------
/raster/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/raster/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/raster/src/cosine_table.h:
--------------------------------------------------------------------------------
1 | #define COSINE_TABLE_LEN 512
2 |
3 | extern const int tcos[COSINE_TABLE_LEN];
4 | extern const int tsin[COSINE_TABLE_LEN];
5 |
--------------------------------------------------------------------------------
/raster/src/res/car.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/raster/src/res/car.png
--------------------------------------------------------------------------------
/raster/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image car_image;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/raster/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE car_image "car.png" -1
--------------------------------------------------------------------------------
/road/src/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include "main_road.h"
3 |
4 | int main(){
5 | main_road();
6 | //main_road_shadow();
7 | //test();
8 |
9 | }
--------------------------------------------------------------------------------
/road/src/main_road.h:
--------------------------------------------------------------------------------
1 | #ifndef MAIN_ROAD_H
2 | #define MAIN_ROAD_H
3 |
4 | void main_road();
5 | void main_road_shadow();
6 | void test();
7 | #endif
8 |
--------------------------------------------------------------------------------
/road/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image road_image;
5 | extern const Image test_image;
6 |
7 | #endif // _GFX_H_
8 |
--------------------------------------------------------------------------------
/road/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE road_image "road.png" -1
2 | IMAGE test_image "test.png" -1
--------------------------------------------------------------------------------
/road/src/res/road.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/road/src/res/road.png
--------------------------------------------------------------------------------
/road/src/res/road_2 (2).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/road/src/res/road_2 (2).png
--------------------------------------------------------------------------------
/road/src/res/test.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/road/src/res/test.png
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/scrolling_logo_sprites_fx/src/out/rom.bin
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/scrolling_logo_sprites_fx/src/res/ball_metal.png
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image ground;
5 | extern const Image rse_logo;
6 | extern const SpriteDefinition ball_metal;
7 |
8 | #endif // _GFX_H_
9 |
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE ground "ground.png" 0
2 | IMAGE rse_logo "rse_logo.png" 0
3 | SPRITE ball_metal "ball_metal.png" 2 2 -1
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/ground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/scrolling_logo_sprites_fx/src/res/ground.png
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/midnight.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/scrolling_logo_sprites_fx/src/res/midnight.vgm
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 midnight[106096];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM midnight "midnight.vgm"
--------------------------------------------------------------------------------
/scrolling_logo_sprites_fx/src/res/rse_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/scrolling_logo_sprites_fx/src/res/rse_logo.png
--------------------------------------------------------------------------------
/slideshow/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/slideshow/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/slideshow/src/easing_table.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #define EASING_TABLE_LEN 1024
4 |
5 | const u16 easing_table[EASING_TABLE_LEN];
6 |
--------------------------------------------------------------------------------
/slideshow/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/slideshow/src/res/14788_gelmir03_9bits_A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/14788_gelmir03_9bits_A.png
--------------------------------------------------------------------------------
/slideshow/src/res/14788_gelmir03_9bits_B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/14788_gelmir03_9bits_B.png
--------------------------------------------------------------------------------
/slideshow/src/res/15164_gelmir10_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/15164_gelmir10_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/6ans_plus_tard_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/6ans_plus_tard_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/artgemtest_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/artgemtest_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/eva_30col_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/eva_30col_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image pic00;
5 | extern const Image pic01a;
6 | extern const Image pic01b;
7 | extern const Image pic02a;
8 | extern const Image pic02b;
9 | extern const Image pic09;
10 |
11 | #endif // _GFX_H_
12 |
--------------------------------------------------------------------------------
/slideshow/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE pic00 "6ans_plus_tard_9bits.png" 0
2 | IMAGE pic01a "shibibi_30col_9bits_A.png" 0
3 | IMAGE pic01b "shibibi_30col_9bits_B.png" 0
4 | IMAGE pic02a "14788_gelmir03_9bits_A.png" 0
5 | IMAGE pic02b "14788_gelmir03_9bits_B.png" 0
6 | IMAGE pic09 "together_9bits.png" 0
--------------------------------------------------------------------------------
/slideshow/src/res/major_b_30col_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/major_b_30col_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/morgan1994_30col_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/morgan1994_30col_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/pearl_30col_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/pearl_30col_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/shibibi_30col_9bits_A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/shibibi_30col_9bits_A.png
--------------------------------------------------------------------------------
/slideshow/src/res/shibibi_30col_9bits_B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/shibibi_30col_9bits_B.png
--------------------------------------------------------------------------------
/slideshow/src/res/together_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/together_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/tube_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/tube_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/res/voielactee_30col_9bits.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/slideshow/src/res/voielactee_30col_9bits.png
--------------------------------------------------------------------------------
/slideshow/src/transition_helper.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 | #include "easing_table.h"
3 |
4 | #ifndef TRANSITION_HELPER
5 | #define TRANSITION_HELPER
6 |
7 | #define RSE_FRAMES(A) ((A*60)/framerate)
8 |
9 | void RSE_turn_screen_to_white(void);
10 | void RSE_turn_screen_to_black(void);
11 | void RSE_pause(u16 frames);
12 | void RSE_clearTileRowB(u16 row);
13 | void RSE_clearTileRowA(u16 row);
14 | void RSE_resetScrolling(void);
15 |
16 | #endif
17 |
--------------------------------------------------------------------------------
/spr_custom_engine/src/ball_coords.h:
--------------------------------------------------------------------------------
1 | #define geosphere_VTX_COUNT 42
2 | const Vect3D_f16 vb_geosphere_vertex_pos[42];
3 | #define grid_cube_VTX_COUNT 100
4 | const Vect3D_f16 vb_grid_cube_vertex_pos[100];
5 | #define grid_cube_small_VTX_COUNT 27
6 | const Vect3D_f16 vb_grid_cube_small_vertex_pos[27];
7 |
--------------------------------------------------------------------------------
/spr_custom_engine/src/out/rom_head.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/spr_custom_engine/src/out/rom_head.bin
--------------------------------------------------------------------------------
/spr_custom_engine/src/profiler.h:
--------------------------------------------------------------------------------
1 | #ifndef PROFILER_H
2 | #define PROFILER_H
3 | #include
4 | #include
5 |
6 | #define PROFILER_PROBE_QTY 3
7 |
8 | typedef struct profiler profiler;
9 | struct profiler{
10 | u32 subTickTotal[PROFILER_PROBE_QTY];
11 | u32 subTickSart[PROFILER_PROBE_QTY];
12 | u32 subTickEnd[PROFILER_PROBE_QTY];
13 | u32 vblCurrent;
14 | u16 id[PROFILER_PROBE_QTY];
15 | u16 idNext;
16 | char *name[PROFILER_PROBE_QTY][10];
17 | };
18 |
19 | profiler profilerMake();
20 | u16 profilerAddProbe(profiler *prfl, const char *lib);
21 | void profilerDebug(profiler *prfl, u32 vblFrq);
22 | void profilerStartProbe(profiler *prfl, u16 id);
23 | u32 profilerStopProbe(profiler *prfl, u16 id);
24 | #endif
25 |
--------------------------------------------------------------------------------
/spr_custom_engine/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/spr_custom_engine/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/spr_custom_engine/src/res/ball_metal.png
--------------------------------------------------------------------------------
/spr_custom_engine/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | SPRITE ball_metal "ball_metal.png" 2 2 -1
--------------------------------------------------------------------------------
/tunnel_bitmap/python/2D_BitmapMode_proto/build_MD_NN.bat:
--------------------------------------------------------------------------------
1 | del *.o /q
2 | rd out /s /q
3 |
4 | set GDK=../../../../../SGDK
5 | set GDK_WIN=..\..\..\..\..\SGDK
6 | ..\..\..\..\..\SGDK\bin\make.exe -f ..\..\..\..\..\SGDK\makefile.gen
7 |
8 | pause
9 | if exist c:\gensKMod\rom.bin del c:\gensKMod\rom.bin
10 | if exist out\rom.bin copy out\rom.bin c:\gensKMod\
11 | if exist out\rom.bin c:
12 | if exist out\rom.bin cd c:\gensKMod\
13 | if exist rom.bin gens.exe rom.bin
14 |
15 | pause
16 |
--------------------------------------------------------------------------------
/tunnel_bitmap/python/2D_BitmapMode_proto/circles3.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/tunnel_bitmap/python/2D_BitmapMode_proto/circles3.pyc
--------------------------------------------------------------------------------
/tunnel_bitmap/python/2D_BitmapMode_proto/main.c:
--------------------------------------------------------------------------------
1 | #include
2 |
--------------------------------------------------------------------------------
/tunnel_bitmap/src-v02/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include "main_tunnel.h"
3 |
4 | int main(){
5 | main_tunnel(500);
6 | VDP_drawText("END", 10, 10);
7 | while (1){
8 | VDP_waitVSync();
9 | }
10 | return 0;
11 | }
12 |
--------------------------------------------------------------------------------
/tunnel_bitmap/src/profiler.h:
--------------------------------------------------------------------------------
1 | #ifndef PROFILER_H
2 | #define PROFILER_H
3 | #include
4 | #include
5 |
6 | #define PROFILER_PROBE_QTY 3
7 |
8 | typedef struct profiler profiler;
9 | struct profiler{
10 | u32 subTickTotal[PROFILER_PROBE_QTY];
11 | u32 subTickSart[PROFILER_PROBE_QTY];
12 | u32 subTickEnd[PROFILER_PROBE_QTY];
13 | u32 vblCurrent;
14 | u16 id[PROFILER_PROBE_QTY];
15 | u16 idNext;
16 | char *name[PROFILER_PROBE_QTY][10];
17 | };
18 |
19 | profiler profilerMake();
20 | u16 profilerAddProbe(profiler *prfl, const char *lib);
21 | void profilerDebug(profiler *prfl, u32 vblFrq);
22 | void profilerStartProbe(profiler *prfl, u16 id);
23 | u32 profilerStopProbe(profiler *prfl, u16 id);
24 | #endif
25 |
--------------------------------------------------------------------------------
/twister/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/twister/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/twister/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/twister/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "twisted_metal.h"
4 |
5 | int main()
6 | {
7 | twistedMetal();
8 | return 0;
9 | }
10 |
11 |
--------------------------------------------------------------------------------
/twister/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image twister;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/twister/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE twister "twister.png" -1
2 |
--------------------------------------------------------------------------------
/twister/res/twister.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/twister/res/twister.png
--------------------------------------------------------------------------------
/twister/twisted_metal.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | void twistedMetal(void);
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 |
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | SPRITE sprite_stars "sprite_stars.png" 1 1 -1
2 | IMAGE underwater "underwater.png" -1
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/res/sprite_stars.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/underwater_starfield_fx/src/res/sprite_stars.png
--------------------------------------------------------------------------------
/underwater_starfield_fx/src/res/underwater.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/underwater_starfield_fx/src/res/underwater.png
--------------------------------------------------------------------------------
/vector_balls/python/3d/build_fp_cosine_tables.bat:
--------------------------------------------------------------------------------
1 | build_fp_cosine_tables.py
2 | pause
--------------------------------------------------------------------------------
/vector_balls/python/3d/obj_to_c_vectorball.bat:
--------------------------------------------------------------------------------
1 | obj_to_c_vectorball.py
2 | pause
--------------------------------------------------------------------------------
/vector_balls/python/3d/util.py:
--------------------------------------------------------------------------------
1 | from math import pi
2 |
3 | def format_number(n, accuracy=6):
4 | """Formats a number in a friendly manner (removes trailing zeros and unneccesary point."""
5 |
6 | fs = "%."+str(accuracy)+"f"
7 | str_n = fs%float(n)
8 | if '.' in str_n:
9 | str_n = str_n.rstrip('0').rstrip('.')
10 | if str_n == "-0":
11 | str_n = "0"
12 | #str_n = str_n.replace("-0", "0")
13 | return str_n
14 |
15 |
16 | def lerp(a, b, i):
17 | """Linear enterpolate from a to b."""
18 | return a+(b-a)*i
--------------------------------------------------------------------------------
/vector_balls/python/3d/vectorballs/geosphere.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 08.12.2015 20:18:26
3 |
4 | newmtl wire_153228184
5 | Ns 32
6 | d 1
7 | Tr 0
8 | Tf 1 1 1
9 | illum 2
10 | Ka 0.600000023842 0.894117712975 0.721568644047
11 | Kd 0.600000023842 0.894117712975 0.721568644047
12 | Ks 0.349999994040 0.349999994040 0.349999994040
13 |
--------------------------------------------------------------------------------
/vector_balls/python/3d/vectorballs/grid_cube.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/vector_balls/python/3d/vectorballs/grid_cube.max
--------------------------------------------------------------------------------
/vector_balls/python/3d/vectorballs/grid_cube.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 06.12.2015 21:08:12
3 |
4 | newmtl _cubeDefault
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/vector_balls/python/3d/vectorballs/grid_cube_small.max:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/vector_balls/python/3d/vectorballs/grid_cube_small.max
--------------------------------------------------------------------------------
/vector_balls/python/3d/vectorballs/grid_cube_small.mtl:
--------------------------------------------------------------------------------
1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
2 | # File Created: 06.12.2015 23:00:35
3 |
4 | newmtl _cubeDefault
5 | Ns 10.000000000000
6 | Ni 1.500000000000
7 | d 1.000000000000
8 | Tr 0.000000000000
9 | Tf 1.000000000000 1.000000000000 1.000000000000
10 | illum 2
11 | Ka 0.587999999523 0.587999999523 0.587999999523
12 | Kd 0.587999999523 0.587999999523 0.587999999523
13 | Ks 0.000000000000 0.000000000000 0.000000000000
14 | Ke 0.000000000000 0.000000000000 0.000000000000
15 |
--------------------------------------------------------------------------------
/vector_balls/src/ball_coords.h:
--------------------------------------------------------------------------------
1 | #define grid_cube_small_VTX_COUNT 20
2 | const Vect3D_f16 vb_grid_cube_small_vertex_pos[20];
3 |
--------------------------------------------------------------------------------
/vector_balls/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/vector_balls/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/vector_balls/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/vector_balls/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/vector_balls/src/out/rom.bin
--------------------------------------------------------------------------------
/vector_balls/src/quicksort.h:
--------------------------------------------------------------------------------
1 | #include "genesis.h"
2 |
3 | // Sorting generic structure
4 | struct QSORT_ENTRY
5 | {
6 | fix16 value;
7 | u16 index;
8 | };
9 |
10 | void QSwap (struct QSORT_ENTRY *a, struct QSORT_ENTRY *b);
11 | void QuickSort (u16 n, struct QSORT_ENTRY *a);
12 |
--------------------------------------------------------------------------------
/vector_balls/src/res/ball_metal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/vector_balls/src/res/ball_metal.png
--------------------------------------------------------------------------------
/vector_balls/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const SpriteDefinition ball_metal;
5 |
6 | #endif // _GFX_H_
7 |
--------------------------------------------------------------------------------
/vector_balls/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | SPRITE ball_metal "ball_metal.png" 2 2 -1
--------------------------------------------------------------------------------
/water_fx/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/water_fx/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/water_fx/src/cosine_table.h:
--------------------------------------------------------------------------------
1 | #define COSINE_TABLE_LEN 512
2 |
3 | extern const int tcos[COSINE_TABLE_LEN];
4 | extern const int tsin[COSINE_TABLE_LEN];
5 |
--------------------------------------------------------------------------------
/water_fx/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/water_fx/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image water_tex_back;
5 | extern const Image water_tex_front;
6 | extern const SpriteDefinition pirate_logo;
7 |
8 | #endif // _GFX_H_
9 |
--------------------------------------------------------------------------------
/water_fx/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE water_tex_back "water_texture_back_layer.png" -1
2 | IMAGE water_tex_front "water_texture_front_layer.png" -1
3 | SPRITE pirate_logo "pirate_logo.png" 16 16 -1
--------------------------------------------------------------------------------
/water_fx/src/res/pirate_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/water_fx/src/res/pirate_logo.png
--------------------------------------------------------------------------------
/water_fx/src/res/water_texture_back_layer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/water_fx/src/res/water_texture_back_layer.png
--------------------------------------------------------------------------------
/water_fx/src/res/water_texture_front_layer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/water_fx/src/res/water_texture_front_layer.png
--------------------------------------------------------------------------------
/xy_sin_scroll/src/build.bat:
--------------------------------------------------------------------------------
1 | del out\rom.bin.bak
2 | copy out\rom.bin out\rom.bin.bak
3 | del out\rom.bin
4 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
5 | out\rom.bin
6 | pause
--------------------------------------------------------------------------------
/xy_sin_scroll/src/build_from_scratch.bat:
--------------------------------------------------------------------------------
1 | del out\* /s /f /q
2 | del out\*.* /s /f /q
3 | %GDK_WIN%\bin\make -f %GDK_WIN%\makefile.gen
4 | out\rom.bin
5 | pause
--------------------------------------------------------------------------------
/xy_sin_scroll/src/language.dat:
--------------------------------------------------------------------------------
1 | [English]
2 | Menu Language=&English menu
3 |
--------------------------------------------------------------------------------
/xy_sin_scroll/src/out/rom.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/xy_sin_scroll/src/out/rom.bin
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/gfx.h:
--------------------------------------------------------------------------------
1 | #ifndef _GFX_H_
2 | #define _GFX_H_
3 |
4 | extern const Image stars_anim;
5 | extern const Image rse_logo;
6 |
7 | #endif // _GFX_H_
8 |
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/gfx.res:
--------------------------------------------------------------------------------
1 | IMAGE stars_anim "stars_anim.png" -1
2 | IMAGE rse_logo "rse_logo.png" -1
3 |
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/resources.h:
--------------------------------------------------------------------------------
1 | #ifndef _RESOURCES_H_
2 | #define _RESOURCES_H_
3 |
4 | extern const u8 zsenilia_theme[37418];
5 |
6 | #endif // _RESOURCES_H_
7 |
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/resources.res:
--------------------------------------------------------------------------------
1 | XGM zsenilia_theme "zsenilia_theme.vgm"
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/rse_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/xy_sin_scroll/src/res/rse_logo.png
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/stars_anim.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/xy_sin_scroll/src/res/stars_anim.png
--------------------------------------------------------------------------------
/xy_sin_scroll/src/res/zsenilia_theme.vgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/astrofra/megadrive-experiments/16daa400f32dafa271a3169df3c3461e20b27196/xy_sin_scroll/src/res/zsenilia_theme.vgm
--------------------------------------------------------------------------------