Files
Diddy-Kong-Racing/src/printf.h
T
d2eb45ff48 XYZ struct proposal (#213)
* Ignore IDO warnings with styles we don't follow

* Fix multiple warnings in game_ui.c

* Define an Object_XYZ struct

* Replaced values in Object for Object_XYZ

* Documenting some values

* Update XYZ to ObjectTransform

* Match render_borders_for_multiplayer and convert #if 1 and #if 0 to #ifdef NON_EQUIVALENT

* Try using more libultra code for the gDPSetFillColor values

* Fix some broken NON_EQUIVALENT code

* Fix a couple of minor warnings in unknown_078050

* More warnings

* Match thread1_main, and clean up all warnings in main.c

* Matched main.c

* Document and cleanup some code in thread0_epc.c

* Fix all warnings in unknown_0255E0.c

* Document unknown_078050.c stuff

* Fix warnings in asset_loading.c

* Fix font warnings

* Fix minor memory.c warnings

* Fix warnings in camera.c

* Fix many more warnings in game.c

* racer.c warning fixes

* Match func_80008140

* func_800092A8 is close, but not quite matching

* Reconfigured unk80120AC0 to be ObjectSegment and have Object match it. Maybe it should be merged in?

* Make changes to get NON_EQUIVALENT building.

* Nearly match func_800092A8

* Get func_800092A8 REALLY close, and update the submodule to point to the newer location

* Matched func_800092A8 thanks to Synray

* Not sure why the commit value changed, but this is the latest

* Fix makefile for updated recomp project builds

* Match update_controller_sticks

* Do some documenting

* Implement suggestions from PR, and add ObjectSegment into Object struct

* Match two more funcs

* An if(0){} seems more appropriate after second thought

* Add size to ObjectSegment

* Update include/structs.h

Co-authored-by: AntonioCastelli <aatcastelli@gmail.com>

Co-authored-by: Ryan Myers <foldor@gmail.com>
Co-authored-by: AntonioCastelli <aatcastelli@gmail.com>
2022-03-10 09:01:18 -05:00

46 lines
1.8 KiB
C

#ifndef _PRINTF_H_
#define _PRINTF_H_
#include "types.h"
#include <PR/gu.h>
#define RENDER_PRINTF_CMD_ARG_BYTE(val) *D_801285D8 = val; D_801285D8++;
#define RENDER_PRINTF_CMD_ARG_SHORT(val) RENDER_PRINTF_CMD_ARG_BYTE(val) RENDER_PRINTF_CMD_ARG_BYTE(val >> 8)
#define RENDER_PRINTF_CMD_END RENDER_PRINTF_CMD_ARG_BYTE(0)
#define RENDER_PRINTF_CMD_SET_COLOR(red, green, blue, alpha) \
RENDER_PRINTF_CMD_ARG_BYTE(0x81) \
RENDER_PRINTF_CMD_ARG_BYTE(red) \
RENDER_PRINTF_CMD_ARG_BYTE(green) \
RENDER_PRINTF_CMD_ARG_BYTE(blue) \
RENDER_PRINTF_CMD_ARG_BYTE(alpha) \
RENDER_PRINTF_CMD_END
#define RENDER_PRINTF_CMD_SET_POSITION(x, y) \
RENDER_PRINTF_CMD_ARG_BYTE(0x82) \
RENDER_PRINTF_CMD_ARG_SHORT(x) \
RENDER_PRINTF_CMD_ARG_SHORT(y) \
RENDER_PRINTF_CMD_END
#define RENDER_PRINTF_CMD_SET_BACKGROUND_COLOR(red, green, blue, alpha) \
RENDER_PRINTF_CMD_ARG_BYTE(0x85) \
RENDER_PRINTF_CMD_ARG_BYTE(red) \
RENDER_PRINTF_CMD_ARG_BYTE(green) \
RENDER_PRINTF_CMD_ARG_BYTE(blue) \
RENDER_PRINTF_CMD_ARG_BYTE(alpha) \
RENDER_PRINTF_CMD_END
void func_800B4A08(s32 arg0);
void func_800B5E88(void);
void set_render_printf_colour(u8 red, u8 green, u8 blue, u8 alpha);
void set_render_printf_background_colour(u8 red, u8 green, u8 blue, u8 alpha);
void set_render_printf_position(u16 xpos, u16 ypos); // Non Matching
s32 render_printf(const char *format, ...); // Non Matching
void print_debug_strings(Gfx **arg0); // Non Matching
#endif