From edb967394d22420c9aaad529862a670c016cc2c7 Mon Sep 17 00:00:00 2001 From: spicyjpeg Date: Fri, 12 Aug 2022 11:27:55 +0200 Subject: Replace ball16c.h headers in examples with .TIM files --- examples/cdrom/cdbrowse/CMakeLists.txt | 4 +++- examples/cdrom/cdbrowse/ball16c.h | 16 ---------------- examples/cdrom/cdbrowse/ball16c.tim | Bin 0 -> 192 bytes examples/cdrom/cdbrowse/main.c | 11 +++++------ examples/cdrom/cdxa/CMakeLists.txt | 4 +++- examples/cdrom/cdxa/ball16c.h | 16 ---------------- examples/cdrom/cdxa/ball16c.tim | Bin 0 -> 192 bytes examples/cdrom/cdxa/main.c | 30 ++++++++++++++---------------- 8 files changed, 25 insertions(+), 56 deletions(-) delete mode 100644 examples/cdrom/cdbrowse/ball16c.h create mode 100644 examples/cdrom/cdbrowse/ball16c.tim delete mode 100644 examples/cdrom/cdxa/ball16c.h create mode 100644 examples/cdrom/cdxa/ball16c.tim (limited to 'examples/cdrom') diff --git a/examples/cdrom/cdbrowse/CMakeLists.txt b/examples/cdrom/cdbrowse/CMakeLists.txt index e36407d..c2e93fc 100644 --- a/examples/cdrom/cdbrowse/CMakeLists.txt +++ b/examples/cdrom/cdbrowse/CMakeLists.txt @@ -5,7 +5,7 @@ cmake_minimum_required(VERSION 3.20) project( cdbrowse - LANGUAGES C + LANGUAGES C ASM VERSION 1.0.0 DESCRIPTION "PSn00bSDK CD file browser example" HOMEPAGE_URL "http://lameguy64.net/?page=psn00bsdk" @@ -15,6 +15,8 @@ file(GLOB _sources *.c) psn00bsdk_add_executable(cdbrowse STATIC ${_sources}) psn00bsdk_add_cd_image(cdbrowse_iso cdbrowse iso.xml DEPENDS cdbrowse) +psn00bsdk_target_incbin(cdbrowse PRIVATE ball16c ball16c.tim) + install( FILES ${PROJECT_BINARY_DIR}/cdbrowse.bin diff --git a/examples/cdrom/cdbrowse/ball16c.h b/examples/cdrom/cdbrowse/ball16c.h deleted file mode 100644 index c79f273..0000000 --- a/examples/cdrom/cdbrowse/ball16c.h +++ /dev/null @@ -1,16 +0,0 @@ -unsigned int ball16c_size=192; -unsigned char ball16c[] = { -0x10,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0xc0,0x03,0x10, -0x01,0x10,0x00,0x01,0x00,0x00,0x00,0x31,0xc6,0x73,0xce,0x94,0xd2,0x07,0x9d, -0xd6,0xda,0x38,0xe3,0xef,0xbd,0x9b,0xef,0x8c,0xb1,0xc6,0x98,0xde,0xfb,0x4a, -0xa9,0xa4,0x90,0xad,0xb5,0x00,0x00,0x8c,0x00,0x00,0x00,0xc0,0x03,0x00,0x01, -0x04,0x00,0x10,0x00,0x00,0x00,0x10,0x22,0x12,0x02,0x00,0x00,0x00,0x10,0x32, -0x33,0x23,0x11,0x04,0x00,0x00,0x23,0x55,0x66,0x35,0x72,0x47,0x00,0x20,0x52, -0x86,0x68,0x36,0x12,0x97,0x0a,0x20,0x65,0xbb,0x8b,0x36,0x12,0x91,0x04,0x31, -0x85,0xbb,0x68,0x35,0x12,0x97,0xdc,0x32,0x86,0x8b,0x56,0x35,0x73,0x97,0xa4, -0x32,0x66,0x68,0x55,0x23,0x71,0x9e,0xac,0x32,0x65,0x56,0x33,0x13,0x71,0xce, -0xa4,0x21,0x33,0x33,0x23,0x11,0xe7,0xc9,0xd4,0x12,0x22,0x22,0x13,0x71,0xe7, -0xc9,0xda,0x10,0x17,0x11,0x77,0x77,0x9e,0x4c,0x0d,0x40,0x77,0x71,0xe7,0x9e, -0xc9,0xd4,0x0d,0x00,0x94,0x99,0x99,0xcc,0x4c,0xda,0x00,0x00,0xa0,0xc4,0xc4, -0x44,0xda,0x0d,0x00,0x00,0x00,0xd0,0xaa,0xda,0x0d,0x00,0x00 -}; diff --git a/examples/cdrom/cdbrowse/ball16c.tim b/examples/cdrom/cdbrowse/ball16c.tim new file mode 100644 index 0000000..e2a5d17 Binary files /dev/null and b/examples/cdrom/cdbrowse/ball16c.tim differ diff --git a/examples/cdrom/cdbrowse/main.c b/examples/cdrom/cdbrowse/main.c index 9a1dbd0..f614f1d 100644 --- a/examples/cdrom/cdbrowse/main.c +++ b/examples/cdrom/cdbrowse/main.c @@ -54,7 +54,7 @@ * July 12, 2020: Updated CD-ROM directory query logic on disc change slightly. */ -#include +#include #include #include #include @@ -67,9 +67,6 @@ #include #include -#include "ball16c.h" - - #define MAX_BALLS 1536 /* Number of balls to display */ #define OT_LEN 8 /* Ordering table length */ @@ -87,7 +84,7 @@ DISPENV disp[2]; DRAWENV draw[2]; char pribuff[2][65536]; /* Primitive packet buffers */ -u_long ot[2][OT_LEN]; /* Ordering tables */ +uint32_t ot[2][OT_LEN]; /* Ordering tables */ char *nextpri; /* Pointer to next packet buffer offset */ int db = 0; /* Double buffer index */ @@ -102,6 +99,8 @@ typedef struct BALL_TYPE BALL_TYPE balls[MAX_BALLS]; +/* Ball texture reference */ +extern const uint32_t ball16c[]; /* TIM image parameters for loading the ball texture and drawing sprites */ TIM_IMAGE tim; @@ -192,7 +191,7 @@ void init() /* Upload the ball texture */ - GetTimInfo((u_long*)ball16c, &tim); /* Get TIM parameters */ + GetTimInfo(ball16c, &tim); /* Get TIM parameters */ LoadImage(tim.prect, tim.paddr); /* Upload texture to VRAM */ if( tim.mode & 0x8 ) { diff --git a/examples/cdrom/cdxa/CMakeLists.txt b/examples/cdrom/cdxa/CMakeLists.txt index 7b90f59..70ef77c 100644 --- a/examples/cdrom/cdxa/CMakeLists.txt +++ b/examples/cdrom/cdxa/CMakeLists.txt @@ -5,7 +5,7 @@ cmake_minimum_required(VERSION 3.20) project( cdxa - LANGUAGES C + LANGUAGES C ASM VERSION 1.0.0 DESCRIPTION "PSn00bSDK CD-XA playback example" HOMEPAGE_URL "http://lameguy64.net/?page=psn00bsdk" @@ -16,6 +16,8 @@ file(GLOB _sources *.c) psn00bsdk_add_executable(cdxa STATIC ${_sources}) #psn00bsdk_add_cd_image(cdxa_iso cdxa iso.xml DEPENDS cdxa) +psn00bsdk_target_incbin(cdxa PRIVATE ball16c ball16c.tim) + install( FILES #${PROJECT_BINARY_DIR}/cdxa.bin diff --git a/examples/cdrom/cdxa/ball16c.h b/examples/cdrom/cdxa/ball16c.h deleted file mode 100644 index c79f273..0000000 --- a/examples/cdrom/cdxa/ball16c.h +++ /dev/null @@ -1,16 +0,0 @@ -unsigned int ball16c_size=192; -unsigned char ball16c[] = { -0x10,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0xc0,0x03,0x10, -0x01,0x10,0x00,0x01,0x00,0x00,0x00,0x31,0xc6,0x73,0xce,0x94,0xd2,0x07,0x9d, -0xd6,0xda,0x38,0xe3,0xef,0xbd,0x9b,0xef,0x8c,0xb1,0xc6,0x98,0xde,0xfb,0x4a, -0xa9,0xa4,0x90,0xad,0xb5,0x00,0x00,0x8c,0x00,0x00,0x00,0xc0,0x03,0x00,0x01, -0x04,0x00,0x10,0x00,0x00,0x00,0x10,0x22,0x12,0x02,0x00,0x00,0x00,0x10,0x32, -0x33,0x23,0x11,0x04,0x00,0x00,0x23,0x55,0x66,0x35,0x72,0x47,0x00,0x20,0x52, -0x86,0x68,0x36,0x12,0x97,0x0a,0x20,0x65,0xbb,0x8b,0x36,0x12,0x91,0x04,0x31, -0x85,0xbb,0x68,0x35,0x12,0x97,0xdc,0x32,0x86,0x8b,0x56,0x35,0x73,0x97,0xa4, -0x32,0x66,0x68,0x55,0x23,0x71,0x9e,0xac,0x32,0x65,0x56,0x33,0x13,0x71,0xce, -0xa4,0x21,0x33,0x33,0x23,0x11,0xe7,0xc9,0xd4,0x12,0x22,0x22,0x13,0x71,0xe7, -0xc9,0xda,0x10,0x17,0x11,0x77,0x77,0x9e,0x4c,0x0d,0x40,0x77,0x71,0xe7,0x9e, -0xc9,0xd4,0x0d,0x00,0x94,0x99,0x99,0xcc,0x4c,0xda,0x00,0x00,0xa0,0xc4,0xc4, -0x44,0xda,0x0d,0x00,0x00,0x00,0xd0,0xaa,0xda,0x0d,0x00,0x00 -}; diff --git a/examples/cdrom/cdxa/ball16c.tim b/examples/cdrom/cdxa/ball16c.tim new file mode 100644 index 0000000..e2a5d17 Binary files /dev/null and b/examples/cdrom/cdxa/ball16c.tim differ diff --git a/examples/cdrom/cdxa/main.c b/examples/cdrom/cdxa/main.c index 284b92f..4921658 100644 --- a/examples/cdrom/cdxa/main.c +++ b/examples/cdrom/cdxa/main.c @@ -116,7 +116,7 @@ * */ -#include +#include #include #include #include @@ -129,14 +129,10 @@ #include #include -#include "ball16c.h" - - #define MAX_BALLS 1536 /* Number of balls to display */ #define OT_LEN 8 /* Ordering table length */ - /* Screen coordinates */ #define SCREEN_XRES 320 #define SCREEN_YRES 240 @@ -150,7 +146,7 @@ DISPENV disp[2]; DRAWENV draw[2]; char pribuff[2][65536]; /* Primitive packet buffers */ -u_long ot[2][OT_LEN]; /* Ordering tables */ +uint32_t ot[2][OT_LEN]; /* Ordering tables */ char *nextpri; /* Pointer to next packet buffer offset */ int db = 0; /* Double buffer index */ @@ -165,6 +161,8 @@ typedef struct BALL_TYPE BALL_TYPE balls[MAX_BALLS]; +/* Ball texture reference */ +extern const uint32_t ball16c[]; /* TIM image parameters for loading the ball texture and drawing sprites */ TIM_IMAGE tim; @@ -179,9 +177,9 @@ CdlLOC xa_loc; /* XA data start location /* Sector header structure for video sector terminator */ typedef struct SECTOR_HEAD { - u_short id; - u_short chan; - u_char pad[28]; + uint16_t id; + uint16_t chan; + uint8_t pad[28]; } SECTOR_HEAD; @@ -199,7 +197,7 @@ void xa_callback(int intr, unsigned char *result) if (intr == CdlDataReady) { /* Fetch data sector */ - CdGetSector((u_long*)&xa_sector_buff, 512); + CdGetSector(&xa_sector_buff, 512); /* Quirk: This CdGetSector() implementation must fetch 2048 bytes */ /* or more otherwise the following sectors will be read in an */ @@ -224,7 +222,7 @@ void xa_callback(int intr, unsigned char *result) num_loops++; /* Retry playback by seeking to start of XA data and stream */ - CdControlF(CdlReadS, (u_char*)&xa_loc); + CdControlF(CdlReadS, &xa_loc); /* Stop playback */ //CdControlF(CdlPause, 0); @@ -276,7 +274,7 @@ void init() /* Upload the ball texture */ - GetTimInfo((u_long*)ball16c, &tim); /* Get TIM parameters */ + GetTimInfo(ball16c, &tim); /* Get TIM parameters */ LoadImage(tim.prect, tim.paddr); /* Upload texture to VRAM */ if( tim.mode & 0x8 ) { @@ -355,7 +353,7 @@ int main(int argc, const char* argv[]) /* Set CD mode for XA streaming (2x speed, send XA to SPU, enable filter */ i = CdlModeSpeed|CdlModeRT|CdlModeSF; - CdControl(CdlSetmode, (u_char*)&i, 0); + CdControl(CdlSetmode, &i, 0); /* Set file 1 on filter for channels 0-7 */ filter.file = 1; @@ -410,8 +408,8 @@ int main(int argc, const char* argv[]) if( !p_cross ) { filter.chan = sel_channel; - CdControl(CdlSetfilter, (u_char*)&filter, 0); - CdControl(CdlReadS, (u_char*)&xa_loc, 0); + CdControl(CdlSetfilter, &filter, 0); + CdControl(CdlReadS, &xa_loc, 0); xa_play_channel = sel_channel; p_cross = 1; } @@ -441,7 +439,7 @@ int main(int argc, const char* argv[]) if( !p_right ) { filter.chan = sel_channel; - CdControl(CdlSetfilter, (u_char*)&filter, 0); + CdControl(CdlSetfilter, &filter, 0); xa_play_channel = sel_channel; p_right = 1; } -- cgit v1.2.3