1.1 --- a/src/bios.c Tue Jan 15 20:50:23 2008 +0000
1.2 +++ b/src/bios.c Wed Jul 30 03:00:40 2008 +0000
1.4 DEBUG( "BIOS GD command %d", cmd->cmd_code );
1.5 switch( cmd->cmd_code ) {
1.8 - cmd->status = GD_CMD_STATUS_DONE;
1.11 + cmd->status = GD_CMD_STATUS_DONE;
1.14 - cmd->status = GD_CMD_STATUS_ERROR;
1.15 - cmd->result[0] = GD_ERROR_SYSTEM;
1.17 + cmd->status = GD_CMD_STATUS_ERROR;
1.18 + cmd->result[0] = GD_ERROR_SYSTEM;
1.26 for( i=0; i<COMMAND_QUEUE_LENGTH; i++ ) {
1.27 - if( gdrom_cmd_queue[i].status != GD_CMD_STATUS_ACTIVE ) {
1.28 - gdrom_cmd_queue[i].status = GD_CMD_STATUS_ACTIVE;
1.29 - gdrom_cmd_queue[i].cmd_code = cmd;
1.30 - gdrom_cmd_queue[i].data = ptr;
1.33 + if( gdrom_cmd_queue[i].status != GD_CMD_STATUS_ACTIVE ) {
1.34 + gdrom_cmd_queue[i].status = GD_CMD_STATUS_ACTIVE;
1.35 + gdrom_cmd_queue[i].cmd_code = cmd;
1.36 + gdrom_cmd_queue[i].data = ptr;
1.42 @@ -104,17 +104,17 @@
1.45 for( i=0; i<COMMAND_QUEUE_LENGTH; i++ ) {
1.46 - if( gdrom_cmd_queue[i].status == GD_CMD_STATUS_ACTIVE ) {
1.47 - bios_gdrom_run_command( &gdrom_cmd_queue[i] );
1.49 + if( gdrom_cmd_queue[i].status == GD_CMD_STATUS_ACTIVE ) {
1.50 + bios_gdrom_run_command( &gdrom_cmd_queue[i] );
1.55 gdrom_command_t bios_gdrom_get_command( uint32_t id )
1.57 if( id >= COMMAND_QUEUE_LENGTH ||
1.58 - gdrom_cmd_queue[id].status == GD_CMD_STATUS_NONE )
1.60 + gdrom_cmd_queue[id].status == GD_CMD_STATUS_NONE )
1.62 return &gdrom_cmd_queue[id];
1.65 @@ -128,78 +128,78 @@
1.67 switch( syscallid ) {
1.68 case 0xB0: /* sysinfo */
1.71 case 0xB4: /* Font */
1.74 case 0xB8: /* Flash */
1.77 case 0xBC: /* Misc/GD-Rom */
1.78 - switch( sh4r.r[6] ) {
1.79 - case 0: /* GD-Rom */
1.80 - switch( sh4r.r[7] ) {
1.81 - case 0: /* Send command */
1.82 - if( sh4r.r[5] == 0 )
1.83 - sh4r.r[0] = bios_gdrom_enqueue( sh4r.r[4], NULL );
1.85 - sh4r.r[0] = bios_gdrom_enqueue( sh4r.r[4], mem_get_region(sh4r.r[5]) );
1.87 - case 1: /* Check command */
1.88 - cmd = bios_gdrom_get_command( sh4r.r[4] );
1.89 - if( cmd == NULL ) {
1.90 - sh4r.r[0] = GD_CMD_STATUS_NONE;
1.92 - sh4r.r[0] = cmd->status;
1.93 - if( cmd->status == GD_CMD_STATUS_ERROR &&
1.94 - sh4r.r[5] != 0 ) {
1.95 - mem_copy_to_sh4( sh4r.r[5], (sh4ptr_t)&cmd->result, sizeof(cmd->result) );
1.99 - case 2: /* Mainloop */
1.100 - bios_gdrom_run_queue();
1.102 - case 3: /* Init */
1.103 - bios_gdrom_init();
1.105 - case 4: /* Drive status */
1.106 - if( sh4r.r[4] != 0 ) {
1.107 - mem_copy_to_sh4( sh4r.r[4], (sh4ptr_t)&bios_gdrom_status,
1.108 - sizeof(bios_gdrom_status) );
1.112 - case 8: /* Abort command */
1.113 - cmd = bios_gdrom_get_command( sh4r.r[4] );
1.114 - if( cmd == NULL || cmd->status != GD_CMD_STATUS_ACTIVE ) {
1.117 - cmd->status = GD_CMD_STATUS_ABORT;
1.121 - case 9: /* Reset */
1.123 - case 10: /* Set mode */
1.128 - case -1: /* Misc */
1.130 - default: /* ??? */
1.134 - case 0xE0: /* Menu */
1.135 - switch( sh4r.r[7] ) {
1.137 - WARN( "Entering main program" );
1.140 - WARN( "Program aborted to DC menu");
1.141 - dreamcast_stop();
1.144 + switch( sh4r.r[6] ) {
1.145 + case 0: /* GD-Rom */
1.146 + switch( sh4r.r[7] ) {
1.147 + case 0: /* Send command */
1.148 + if( sh4r.r[5] == 0 )
1.149 + sh4r.r[0] = bios_gdrom_enqueue( sh4r.r[4], NULL );
1.151 + sh4r.r[0] = bios_gdrom_enqueue( sh4r.r[4], mem_get_region(sh4r.r[5]) );
1.153 + case 1: /* Check command */
1.154 + cmd = bios_gdrom_get_command( sh4r.r[4] );
1.155 + if( cmd == NULL ) {
1.156 + sh4r.r[0] = GD_CMD_STATUS_NONE;
1.158 + sh4r.r[0] = cmd->status;
1.159 + if( cmd->status == GD_CMD_STATUS_ERROR &&
1.160 + sh4r.r[5] != 0 ) {
1.161 + mem_copy_to_sh4( sh4r.r[5], (sh4ptr_t)&cmd->result, sizeof(cmd->result) );
1.165 + case 2: /* Mainloop */
1.166 + bios_gdrom_run_queue();
1.168 + case 3: /* Init */
1.169 + bios_gdrom_init();
1.171 + case 4: /* Drive status */
1.172 + if( sh4r.r[4] != 0 ) {
1.173 + mem_copy_to_sh4( sh4r.r[4], (sh4ptr_t)&bios_gdrom_status,
1.174 + sizeof(bios_gdrom_status) );
1.178 + case 8: /* Abort command */
1.179 + cmd = bios_gdrom_get_command( sh4r.r[4] );
1.180 + if( cmd == NULL || cmd->status != GD_CMD_STATUS_ACTIVE ) {
1.183 + cmd->status = GD_CMD_STATUS_ABORT;
1.187 + case 9: /* Reset */
1.189 + case 10: /* Set mode */
1.194 + case -1: /* Misc */
1.196 + default: /* ??? */
1.200 + case 0xE0: /* Menu */
1.201 + switch( sh4r.r[7] ) {
1.203 + WARN( "Entering main program" );
1.206 + WARN( "Program aborted to DC menu");
1.207 + dreamcast_stop();