GSP: Add a few comments.
This commit is contained in:
		
							parent
							
								
									9b0d0c81a0
								
							
						
					
					
						commit
						4b141791ed
					
				@ -171,6 +171,9 @@ void TriggerCmdReqQueue(Service::Interface* self) {
 | 
			
		||||
               command.dma_request.size);
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
    // ctrulib homebrew sends all relevant command list data with this command,
 | 
			
		||||
    // hence we do all "interesting" stuff here and do nothing in SET_COMMAND_LIST_FIRST.
 | 
			
		||||
    // TODO: This will need some rework in the future.
 | 
			
		||||
    case GXCommandId::SET_COMMAND_LIST_LAST:
 | 
			
		||||
    {
 | 
			
		||||
        auto& params = command.set_command_list_last;
 | 
			
		||||
@ -186,6 +189,8 @@ void TriggerCmdReqQueue(Service::Interface* self) {
 | 
			
		||||
        break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // It's assumed that the two "blocks" behave equivalently.
 | 
			
		||||
    // Presumably this is done simply to allow two memory fills to run in parallel.
 | 
			
		||||
    case GXCommandId::SET_MEMORY_FILL:
 | 
			
		||||
    {
 | 
			
		||||
        auto& params = command.memory_fill;
 | 
			
		||||
@ -218,9 +223,10 @@ void TriggerCmdReqQueue(Service::Interface* self) {
 | 
			
		||||
        break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO: Figure out what exactly SET_COMMAND_LIST_FIRST and SET_COMMAND_LIST_LAST
 | 
			
		||||
    //       are supposed to do.
 | 
			
		||||
    case GXCommandId::SET_COMMAND_LIST_FIRST:
 | 
			
		||||
    {
 | 
			
		||||
        // TODO
 | 
			
		||||
        break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -15,9 +15,17 @@ namespace GSP_GPU {
 | 
			
		||||
enum class GXCommandId : u32 {
 | 
			
		||||
    REQUEST_DMA            = 0x00,
 | 
			
		||||
    SET_COMMAND_LIST_LAST  = 0x01,
 | 
			
		||||
 | 
			
		||||
    // Fills a given memory range with a particular value
 | 
			
		||||
    SET_MEMORY_FILL        = 0x02,
 | 
			
		||||
 | 
			
		||||
    // Copies an image and optionally performs color-conversion or scaling.
 | 
			
		||||
    // This is highly similar to the GameCube's EFB copy feature
 | 
			
		||||
    SET_DISPLAY_TRANSFER   = 0x03,
 | 
			
		||||
 | 
			
		||||
    // Conceptionally similar to SET_DISPLAY_TRANSFER and presumable uses the same hardware path
 | 
			
		||||
    SET_TEXTURE_COPY       = 0x04,
 | 
			
		||||
 | 
			
		||||
    SET_COMMAND_LIST_FIRST = 0x05,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user