mirror of
https://github.com/86Box/86Box.git
synced 2026-02-23 18:08:20 -07:00
rename intr_1_invalid_method to indicate that it seems to also be used for software ethods
This commit is contained in:
@@ -79,6 +79,8 @@ typedef enum nv3_pgraph_class_e
|
||||
|
||||
#define NV3_ROP_SET_ROP 0x0300 // Set GDI standard rop
|
||||
|
||||
#define NV3_BETA_FACTOR 0x0300
|
||||
|
||||
#define NV3_CLIP_POSITION 0x0300 // S16:S16, 0=topleft
|
||||
#define NV3_CLIP_SIZE 0x0304 // U16:U16
|
||||
|
||||
|
||||
@@ -210,6 +210,8 @@ extern const device_config_t nv3_config[];
|
||||
#define NV3_PBUS_END 0x1FFF
|
||||
#define NV3_PFIFO_START 0x2000 // FIFO for DMA Object Submission (uses hashtable to store the objects)
|
||||
|
||||
#define NV3_PFIFO_MINIMUM_GUARANTEED_DEPTH 0x7C
|
||||
|
||||
#define NV3_PFIFO_DELAY_0 0x2040 // PFIFO Config Register
|
||||
#define NV3_PFIFO_DEBUG_0 0x2080 // PFIFO Debug Register
|
||||
#define NV3_PFIFO_CACHE0_ERROR_PENDING 0
|
||||
@@ -286,7 +288,7 @@ extern const device_config_t nv3_config[];
|
||||
#define NV3_PFIFO_CACHE0_METHOD_END 0x3200
|
||||
#define NV3_PFIFO_CACHE0_METHOD_ADDRESS 2 // 12:2
|
||||
#define NV3_PFIFO_CACHE0_METHOD_SUBCHANNEL 13 // 15:13
|
||||
#define NV3_PFIFO_CACHE1_PUSH0 0x3200
|
||||
#define NV3_PFIFO_CACHE1_PUSH0 0x3200
|
||||
#define NV3_PFIFO_CACHE1_PUSH_CHANNEL_ID 0x3204
|
||||
#define NV3_PFIFO_CACHE1_PUT 0x3210
|
||||
#define NV3_PFIFO_CACHE1_PUT_ADDRESS 2 // 6:2
|
||||
@@ -527,7 +529,7 @@ extern const device_config_t nv3_config[];
|
||||
#define NV3_PGRAPH_INTR_0_SOFTWARE_NOTIFY 28 // Fired on software notification
|
||||
|
||||
#define NV3_PGRAPH_INTR_1 0x400104
|
||||
#define NV3_PGRAPH_INTR_1_INVALID_METHOD 0 // Invalid method
|
||||
#define NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING 0 // Software or invalid method
|
||||
#define NV3_PGRAPH_INTR_1_INVALID_DATA 4 // Invalid data. Not sure when this would be triggered.
|
||||
#define NV3_PGRAPH_INTR_1_DOUBLE_NOTIFY 12 // Tried to notify while a notify was pending.
|
||||
#define NV3_PGRAPH_INTR_1_CTXSW_NOTIFY 16 // Notify fired for software context
|
||||
|
||||
@@ -34,7 +34,7 @@ void nv3_class_001_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -37,7 +37,7 @@ void nv3_class_002_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
break;
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_003_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_004_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -43,7 +43,7 @@ void nv3_class_005_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
break;
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_006_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -63,7 +63,7 @@ void nv3_class_007_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
}
|
||||
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x\n", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_008_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_009_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -35,7 +35,7 @@ void nv3_class_00a_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_00b_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_00c_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_00d_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_00e_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_010_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_011_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -35,7 +35,7 @@ void nv3_class_012_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -35,7 +35,7 @@ void nv3_class_014_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_015_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void nv3_class_017_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,7 @@ void nv3_class_018_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
{
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -64,6 +64,10 @@ void nv3_class_01c_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
nv_log("Image in Memory BUF%d COLOR_FORMAT=0x%04x", src_buffer_id, param);
|
||||
|
||||
break;
|
||||
/* DOn't log invalid */
|
||||
case NV3_IMAGE_IN_MEMORY_IN_MEMORY_DMA_CTX_TYPE:
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
break;
|
||||
/* Pitch - length between scanlines */
|
||||
case NV3_IMAGE_IN_MEMORY_PITCH:
|
||||
|
||||
@@ -80,7 +84,7 @@ void nv3_class_01c_method(uint32_t param, uint32_t method_id, nv3_ramin_context_
|
||||
break;
|
||||
default:
|
||||
nv_log("%s: Invalid or Unimplemented method 0x%04x", nv3_class_names[context.class_id & 0x1F], method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -56,7 +56,7 @@ void nv3_generic_method(uint32_t param, uint32_t method_id, nv3_ramin_context_t
|
||||
break;
|
||||
default:
|
||||
nv_log("Shared Generic Methods: Invalid or Unimplemented method 0x%04x", method_id);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_INVALID_METHOD);
|
||||
nv3_pgraph_interrupt_invalid(NV3_PGRAPH_INTR_1_SOFTWARE_METHOD_PENDING);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -602,8 +602,6 @@ void nv3_pgraph_arbitrate_method(uint32_t param, uint16_t method, uint8_t channe
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
nv3_notify_if_needed(param, method, context, grobj);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user