all repos — mgba @ 6b84383d1ad29d9dd39a62a80c1c8c5878979f45

mGBA Game Boy Advance Emulator

src/platform/python/mgba/ds.py (view raw)

 1# Copyright (c) 2013-2017 Jeffrey Pfau
 2#
 3# This Source Code Form is subject to the terms of the Mozilla Public
 4# License, v. 2.0. If a copy of the MPL was not distributed with this
 5# file, You can obtain one at http://mozilla.org/MPL/2.0/.
 6from ._pylib import ffi, lib
 7from .arm import ARMCore
 8from .core import Core
 9
10class DS(Core):
11    KEY_A = lib.DS_KEY_A
12    KEY_B = lib.DS_KEY_B
13    KEY_SELECT = lib.DS_KEY_SELECT
14    KEY_START = lib.DS_KEY_START
15    KEY_DOWN = lib.DS_KEY_DOWN
16    KEY_UP = lib.DS_KEY_UP
17    KEY_LEFT = lib.DS_KEY_LEFT
18    KEY_RIGHT = lib.DS_KEY_RIGHT
19    KEY_L = lib.DS_KEY_L
20    KEY_R = lib.DS_KEY_R
21    KEY_X = lib.DS_KEY_X
22    KEY_Y = lib.DS_KEY_Y
23
24    def __init__(self, native):
25        super(DS, self).__init__(native)
26        self._native = ffi.cast("struct DS*", native.board)
27        self.arm7 = ARMCore(self._native.ds7.cpu)
28        self.arm9 = ARMCore(self._native.ds9.cpu)