diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/arm/interpreter/arminit.cpp | 4 | ||||
-rw-r--r-- | src/core/arm/skyeye_common/armdefs.h | 23 | ||||
-rw-r--r-- | src/core/hle/service/y2r_u.cpp | 19 |
3 files changed, 23 insertions, 23 deletions
diff --git a/src/core/arm/interpreter/arminit.cpp b/src/core/arm/interpreter/arminit.cpp index abafe226e..4ac827e0a 100644 --- a/src/core/arm/interpreter/arminit.cpp +++ b/src/core/arm/interpreter/arminit.cpp @@ -58,11 +58,7 @@ void ARMul_SelectProcessor(ARMul_State* state, unsigned properties) state->is_v4 = (properties & (ARM_v4_Prop | ARM_v5_Prop)) != 0; state->is_v5 = (properties & ARM_v5_Prop) != 0; state->is_v5e = (properties & ARM_v5e_Prop) != 0; - state->is_XScale = (properties & ARM_XScale_Prop) != 0; - state->is_iWMMXt = (properties & ARM_iWMMXt_Prop) != 0; state->is_v6 = (properties & ARM_v6_Prop) != 0; - state->is_ep9312 = (properties & ARM_ep9312_Prop) != 0; - state->is_pxa27x = (properties & ARM_PXA27X_Prop) != 0; state->is_v7 = (properties & ARM_v7_Prop) != 0; // Only initialse the coprocessor support once we diff --git a/src/core/arm/skyeye_common/armdefs.h b/src/core/arm/skyeye_common/armdefs.h index 070fcf7dc..16f3ac86c 100644 --- a/src/core/arm/skyeye_common/armdefs.h +++ b/src/core/arm/skyeye_common/armdefs.h @@ -185,10 +185,6 @@ So, if lateabtSig=1, then it means Late Abort Model(Base Updated Abort Model) bool is_v5e; // Are we emulating a v5e architecture? bool is_v6; // Are we emulating a v6 architecture? bool is_v7; // Are we emulating a v7 architecture? - bool is_XScale; // Are we emulating an XScale architecture? - bool is_iWMMXt; // Are we emulating an iWMMXt co-processor? - bool is_ep9312; // Are we emulating a Cirrus Maverick co-processor? - bool is_pxa27x; // Are we emulating a Intel PXA27x co-processor? // ARM_ARM A2-18 // 0 Base Restored Abort Model, 1 the Early Abort Model, 2 Base Updated Abort Model @@ -211,20 +207,11 @@ So, if lateabtSig=1, then it means Late Abort Model(Base Updated Abort Model) \***************************************************************************/ enum { - ARM_Nexec_Prop = 0x02, - ARM_Debug_Prop = 0x10, - ARM_Isync_Prop = ARM_Debug_Prop, - ARM_Lock_Prop = 0x20, - ARM_v4_Prop = 0x40, - ARM_v5_Prop = 0x80, - ARM_v6_Prop = 0xc0, - - ARM_v5e_Prop = 0x100, - ARM_XScale_Prop = 0x200, - ARM_ep9312_Prop = 0x400, - ARM_iWMMXt_Prop = 0x800, - ARM_PXA27X_Prop = 0x1000, - ARM_v7_Prop = 0x2000, + ARM_v4_Prop = 0x01, + ARM_v5_Prop = 0x02, + ARM_v5e_Prop = 0x04, + ARM_v6_Prop = 0x08, + ARM_v7_Prop = 0x10, }; /***************************************************************************\ diff --git a/src/core/hle/service/y2r_u.cpp b/src/core/hle/service/y2r_u.cpp index a58e04d6d..6607965e1 100644 --- a/src/core/hle/service/y2r_u.cpp +++ b/src/core/hle/service/y2r_u.cpp @@ -11,6 +11,8 @@ namespace Y2R_U { +static Kernel::SharedPtr<Kernel::Event> completion_event = 0; + /** * Y2R_U::IsBusyConversion service function * Outputs: @@ -26,13 +28,26 @@ static void IsBusyConversion(Service::Interface* self) { LOG_WARNING(Service, "(STUBBED) called"); } +/** + * Y2R_U::GetTransferEndEvent service function + * Outputs: + * 1 : Result of function, 0 on success, otherwise error code + * 3 : The handle of the completion event + */ +static void GetTransferEndEvent(Service::Interface* self) { + u32* cmd_buff = Kernel::GetCommandBuffer(); + + cmd_buff[1] = RESULT_SUCCESS.raw; + cmd_buff[3] = Kernel::g_handle_table.Create(completion_event).MoveFrom(); +} + const Interface::FunctionInfo FunctionTable[] = { {0x00010040, nullptr, "SetInputFormat"}, {0x00030040, nullptr, "SetOutputFormat"}, {0x00050040, nullptr, "SetRotation"}, {0x00070040, nullptr, "SetBlockAlignment"}, {0x000D0040, nullptr, "SetTransferEndInterrupt"}, - {0x000F0000, nullptr, "GetTransferEndEvent"}, + {0x000F0000, GetTransferEndEvent, "GetTransferEndEvent"}, {0x00100102, nullptr, "SetSendingY"}, {0x00110102, nullptr, "SetSendingU"}, {0x00120102, nullptr, "SetSendingV"}, @@ -53,6 +68,8 @@ const Interface::FunctionInfo FunctionTable[] = { // Interface class Interface::Interface() { + completion_event = Kernel::Event::Create(RESETTYPE_ONESHOT, "Y2R:Completed"); + Register(FunctionTable); } |