~ubuntu-branches/ubuntu/lucid/sdlmame/lucid

« back to all changes in this revision

Viewing changes to src/emu/cpu/mips/psx.c

  • Committer: Bazaar Package Importer
  • Author(s): Cesare Falco
  • Date: 2009-11-03 17:10:15 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20091103171015-6hop4ory5lxnumpn
Tags: 0.135-0ubuntu1
* New upstream release - Closes (LP: #403212)
* debian/watch: unstable releases are no longer detected
* mame.ini: added the cheat subdirectories to cheatpath so zipped
  cheatfiles will be searched too
* renamed crsshair subdirectory to crosshair to reflect upstream change
* mame.ini: renamed references to crosshair subdirectory (see above)

Show diffs side-by-side

added added

removed removed

Lines of Context:
64
64
 */
65
65
 
66
66
#include "debugger.h"
67
 
#include "osd_cpu.h"
68
67
#include "psx.h"
69
68
 
70
69
#define LOG_BIOSCALL ( 0 )
1146
1145
        {
1147
1146
        case MULTIPLIER_OPERATION_MULT:
1148
1147
                {
1149
 
                        INT64 result = MUL_64_32_32( (INT32)psxcpu->multiplier_operand1, (INT32)psxcpu->multiplier_operand2 );
1150
 
                        psxcpu->lo = LO32_32_64( result );
1151
 
                        psxcpu->hi = HI32_32_64( result );
 
1148
                        INT64 result = mul_32x32( (INT32)psxcpu->multiplier_operand1, (INT32)psxcpu->multiplier_operand2 );
 
1149
                        psxcpu->lo = EXTRACT_64LO( result );
 
1150
                        psxcpu->hi = EXTRACT_64HI( result );
1152
1151
                }
1153
1152
                break;
1154
1153
 
1155
1154
        case MULTIPLIER_OPERATION_MULTU:
1156
1155
                {
1157
 
                        UINT64 result = MUL_U64_U32_U32( psxcpu->multiplier_operand1, psxcpu->multiplier_operand2 );
1158
 
                        psxcpu->lo = LO32_U32_U64( result );
1159
 
                        psxcpu->hi = HI32_U32_U64( result );
 
1156
                        UINT64 result = mulu_32x32( psxcpu->multiplier_operand1, psxcpu->multiplier_operand2 );
 
1157
                        psxcpu->lo = EXTRACT_64LO( result );
 
1158
                        psxcpu->hi = EXTRACT_64HI( result );
1160
1159
                }
1161
1160
                break;
1162
1161
 
6119
6118
                case CPUINFO_INT_CONTEXT_SIZE:                                  info->i = sizeof(psxcpu_state);                 break;
6120
6119
                case CPUINFO_INT_INPUT_LINES:                                   info->i = 6;                                                    break;
6121
6120
                case CPUINFO_INT_DEFAULT_IRQ_VECTOR:                    info->i = 0;                                                    break;
6122
 
                case CPUINFO_INT_ENDIANNESS:                                    info->i = ENDIANNESS_LITTLE;                                    break;
 
6121
                case DEVINFO_INT_ENDIANNESS:                                    info->i = ENDIANNESS_LITTLE;                                    break;
6123
6122
                case CPUINFO_INT_CLOCK_MULTIPLIER:                              info->i = 1;                                                    break;
6124
6123
                case CPUINFO_INT_CLOCK_DIVIDER:                                 info->i = 2 * 2;                                                        break;
6125
6124
                case CPUINFO_INT_MIN_INSTRUCTION_BYTES:                 info->i = 4;                                                    break;
6286
6285
                case CPUINFO_PTR_INTERNAL_MEMORY_MAP_IO:      info->internal_map32 = 0; break;
6287
6286
 
6288
6287
                /* --- the following bits of info are returned as NULL-terminated strings --- */
6289
 
                case CPUINFO_STR_NAME:                                                  strcpy(info->s, "PSX CPU"); break;
6290
 
                case CPUINFO_STR_CORE_FAMILY:                                   strcpy(info->s, "MIPS"); break;
6291
 
                case CPUINFO_STR_CORE_VERSION:                                  strcpy(info->s, "2.0"); break;
6292
 
                case CPUINFO_STR_CORE_FILE:                                             strcpy(info->s, __FILE__); break;
6293
 
                case CPUINFO_STR_CORE_CREDITS:                                  strcpy(info->s, "Copyright 2008 smf"); break;
 
6288
                case DEVINFO_STR_NAME:                                                  strcpy(info->s, "PSX CPU"); break;
 
6289
                case DEVINFO_STR_FAMILY:                                        strcpy(info->s, "MIPS"); break;
 
6290
                case DEVINFO_STR_VERSION:                                       strcpy(info->s, "2.0"); break;
 
6291
                case DEVINFO_STR_SOURCE_FILE:                                           strcpy(info->s, __FILE__); break;
 
6292
                case DEVINFO_STR_CREDITS:                                       strcpy(info->s, "Copyright 2008 smf"); break;
6294
6293
 
6295
6294
                case CPUINFO_STR_FLAGS:                                                 strcpy(info->s, " "); break;
6296
6295
 
6424
6423
                case CPUINFO_PTR_INTERNAL_MEMORY_MAP_PROGRAM: info->internal_map32 = ADDRESS_MAP_NAME(cxd8661r_internal_map); break;
6425
6424
 
6426
6425
                        /* --- the following bits of info are returned as NULL-terminated strings --- */
6427
 
                case CPUINFO_STR_NAME:                                                  strcpy(info->s, "CXD8661R"); break;
 
6426
                case DEVINFO_STR_NAME:                                                  strcpy(info->s, "CXD8661R"); break;
6428
6427
 
6429
6428
                default:
6430
6429
                        CPU_GET_INFO_CALL(psxcpu);