mirror of
				https://github.com/N64Recomp/N64ModernRuntime.git
				synced 2025-10-30 08:02:29 +00:00 
			
		
		
		
	Compare commits
	
		
			3 commits
		
	
	
		
			8f1e1789ec
			...
			48a769d071
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
							 | 
						48a769d071 | ||
| 
							 | 
						8b5800233a | ||
| 
							 | 
						8719abe217 | 
					 3 changed files with 29 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -22,6 +22,18 @@ extern "C" void osViRepeatLine_recomp(uint8_t* rdram, recomp_context* ctx) {
 | 
			
		|||
    osViRepeatLine(_arg<0, u8>(rdram, ctx));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" void osViGetCurrentLine_recomp(uint8_t* rdram, recomp_context* ctx) {
 | 
			
		||||
    ctx->r2 = (gpr)osViGetCurrentLine();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" void osViGetCurrentField_recomp(uint8_t* rdram, recomp_context* ctx) {
 | 
			
		||||
    ctx->r2 = (gpr)osViGetCurrentField();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" void osViGetStatus_recomp(uint8_t* rdram, recomp_context* ctx) {
 | 
			
		||||
    ctx->r2 = (gpr)osViGetStatus();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" void osViSetSpecialFeatures_recomp(uint8_t* rdram, recomp_context* ctx) {
 | 
			
		||||
    osViSetSpecialFeatures((uint32_t)ctx->r4);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -44,6 +44,8 @@ typedef uint8_t u8;
 | 
			
		|||
#  ifdef __cplusplus
 | 
			
		||||
#    define NULLPTR (PTR(void))0
 | 
			
		||||
#  endif
 | 
			
		||||
#  define PHYS_TO_K1(x)	((x)|0xA0000000)
 | 
			
		||||
#  define IO_READ(addr) (*(volatile uint32_t*)PHYS_TO_K1(addr))
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef NULL
 | 
			
		||||
| 
						 | 
				
			
			@ -285,6 +287,9 @@ void osViSetMode(RDRAM_ARG PTR(OSViMode));
 | 
			
		|||
void osViSetSpecialFeatures(uint32_t func);
 | 
			
		||||
void osViBlack(uint8_t active);
 | 
			
		||||
void osViRepeatLine(uint8_t active);
 | 
			
		||||
u32 osViGetCurrentLine();
 | 
			
		||||
u32 osViGetCurrentField();
 | 
			
		||||
u32 osViGetStatus();
 | 
			
		||||
void osViSetXScale(float scale);
 | 
			
		||||
void osViSetYScale(float scale);
 | 
			
		||||
PTR(void) osViGetNextFramebuffer();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -473,6 +473,18 @@ extern "C" void osViRepeatLine(uint8_t active) {
 | 
			
		|||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" u32 osViGetCurrentLine() {
 | 
			
		||||
    return IO_READ(VI_V_CURRENT_LINE_REG);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" u32 osViGetCurrentField() {
 | 
			
		||||
    return IO_READ(VI_V_CURRENT_LINE_REG) & 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" u32 osViGetStatus() {
 | 
			
		||||
    return IO_READ(VI_STATUS_REG);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extern "C" void osViSetXScale(float scale) {
 | 
			
		||||
    if (scale != 1.0f) {
 | 
			
		||||
        assert(false);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue