gamepadimpl.c

来自「java learn PPT java learn PPT java learn」· C语言 代码 · 共 46 行

C
46
字号
     #include <jni.h>
     #include <conio.h>
     #include "GamepadTest.h"

     #define PORT 0x201

     JNIEXPORT jint JNICALL Java_GamepadTest_gamepadButtonPressed
     	(JNIEnv *env, jobject obj, jint button)
     {
         _outp(PORT, 0);

         return (~_inp(PORT) & button);
     }

     JNIEXPORT jint JNICALL Java_GamepadTest_gamepadAxis
       (JNIEnv *env, jobject obj, jint stick)
     {
         short ret_val;

         _asm
         {
             cli

             mov ah, byte ptr stick

             xor al, al
             xor cx, cx

             mov dx, PORT
             out dx, al

          discharge:

             in al, dx
             test al, ah
             loopne discharge

             sti
             xor ax, ax
             sub ax, cx

             mov ret_val, ax
         }

         return (int) ret_val;
     }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?