/SegaMasterSystemLinux

Sega Master System code repositories for Linux

Primary LanguageCGNU General Public License v3.0GPL-3.0

SegaMasterSystemLinux

Sega Master System code repositories for Linux new code added daily...!!

09-01-2023 mod replacement https://embeddedgurus.com/stack-overflow/2011/02/efficient-c-tip-13-use-the-modulus-operator-with-caution

01-01-2023 git error index uses extension 01-01-2023 http://techies-world.com/git-error-index-uses-extension-which-we-do-not-understand-fatal-index-file-corrupt

Skazka sound effects choice E:\GitHub\StevePro8\SegaMasterSystemLinux\Examples\08_Music_SoundFX\dev

IMPORTANT splash screen E:\GitHub\StevePro8\SegaMasterSystemLinux\TurtleBridge\sound\SampleTest02

AUDIO 4 6 beep 8 attack 11 weird 12 jump 13 14 beep" 15 hit 16 press fire1 22 end stage WavSplit E:\GitHub\StevePro7\Blogger\Z80_Setup04

GENERAL 19/12/2021 input_manager inject direction thinner API consolidate tiles e.g. font

font_manager can I have dynamic no. "0" padding? use latest SMS Mgr all working on latest devkitSMS e.g. SDCC 4.1.0 on Win + Lin

IMPORTANT follow example where I now have content folder and gfx and psg sub folders are there Example: devkitSMScode\00_library\dev\content

Generalize the game.h info

Very Basic Tutorial of C for Master System https://www.elotrolado.net/hilo_tutorial-muy-basico-de-c-para-master-system_2208028_s350 19/12/2021

BLOCK SegaMasterSystemLinux\Examples\05_InputDetectionBlock replicates the example from Candy Kid with sprite going behind block e.g. to simulate Pacman exits - must use the sprite palette here

SCROLL SegaMasterSystemLinux\Examples\05_InputDetectionNewDevkit This example replicates Gotris title screen scrolling also using the latest devkitSMS library in devkitSMScode

Input Manager stream line E:\GitHub\StevePro7\SegaMasterSystemLinux\Examples\05_InputDetectionBlock\dev\engine\input_manager.c

Sections 12/02/2022

Reference: E:\GitHub\StevePro8\SegaMasterSystemLinux\TurtleBridge\mario\24-BackgroundSpriteTilesTest\dev\engine\tile_manager.c engine_tile_manager_draw_flip( tile_type_section01, 0, 12, 16, 10, 6, 16 ); engine_tile_manager_draw_norm( tile_type_section01, 23, 12, 16, 10, 0, 9 );

i.e. section01 is 16x tiles wide but make the bonus level 9x wide i.e. 10x but less 1x tile for the hidden left column 16- 6 10 but 0 col is hidden then mirror 9x on the other side 0 - 9 9

that means there are 13x ttiles in between 1 + 9 + 13 + 9 = 32

Section 02 + 03 if 8px wide 0 draw section 02 16 draw section 03 16-16 i.e. 0 = 8 - 8

if 12px wide 4 draw section 02 16 draw section 03 16-20 i.e. 4 = 12 - 8

if 16px wide 8 draw section 02 16 draw section 03 16-24 i.e. 8 = 16 - 8

TODO want the sea to have dynamic height 2, 3, 4, 5

Jumping 22/02/2022 16 46

state = up#1 17x frames 1, 2, 2, 2, 3, 3, 3... 3 = 46

state = up#1 17x frames 3, 3, 3, 3, 3, 3, 3... 3 = 51

Jumping double jump 178 = 194 - 16 single jump 91 = 107 - 16

28/02/2022 TileManager finalize APIs need override for scrolling that can draw any checkpoint in level plus one screen [32] or variable width

01/03/2022 strips E:\GitHub\StevePro8\SegaMasterSystemLinux\TurtleBridge\utils\25-BuildAllTileMaps_Image02
copy all tiles files as input and iterate and produce corresponding strips images for level output design

18/03/2022 select decide advance?

if event_stage == select

if selection != INVALID event_stage = decide

if event_stage == decide

if selection == run

if rand() % 2 == 0 screen = stats return else print "cant run" prev_es = evt_stg event_stage = advance end

else if selection == fight fight_manager_update()

check if enemy dead then print msg
prev_es = evt_stg
event_stage = advance

check if player dead then
	screen = over
	return
end

end

if event_stage == advance check press fire1 || fire2

if fire1 || fire2 then
	remove "cant run" text unconditionally
		if prev_es == decide then es = select && screen = fight
		if prev_es == fight then es = N/A && screen = stats

end

boss print text

select