From 2dd04961404736dd52abba6f443223e3364817a5 Mon Sep 17 00:00:00 2001 From: spacy51 Date: Mon, 14 Jan 2008 21:58:24 +0000 Subject: [PATCH] IMPROVE icon USE new icon for x64 CLEAN resource file REMOVE useless files git-svn-id: https://svn.code.sf.net/p/vbam/code/trunk@302 a31d4220-a93d-0410-bf67-fe4944624d44 --- VBA.vcproj | 14 +- res/ReadMe.txt | 13 +- res/resource.h | 749 ---------------------- src/win32/DirectDraw.cpp.orig | 845 ------------------------- src/win32/DirectInput.cpp.orig | 1056 -------------------------------- src/win32/VBA-M.ico | Bin 0 -> 299702 bytes src/win32/VBA.cpp | 3 +- src/win32/VBA.rc | 113 +++- src/win32/gbadvance.ico | Bin 4710 -> 0 bytes src/win32/resource.h | 1 + src/win32/resource2.h | 1 - src/win32/vba.rc2 | 56 -- src/win32/vbavista.ico | Bin 501830 -> 0 bytes 13 files changed, 106 insertions(+), 2745 deletions(-) delete mode 100644 res/resource.h delete mode 100644 src/win32/DirectDraw.cpp.orig delete mode 100644 src/win32/DirectInput.cpp.orig create mode 100644 src/win32/VBA-M.ico delete mode 100644 src/win32/gbadvance.ico delete mode 100644 src/win32/resource2.h delete mode 100644 src/win32/vba.rc2 delete mode 100644 src/win32/vbavista.ico diff --git a/VBA.vcproj b/VBA.vcproj index c53d3f3d..a7fa3b49 100644 --- a/VBA.vcproj +++ b/VBA.vcproj @@ -78,7 +78,7 @@ /> @@ -295,7 +295,7 @@ /> @@ -488,7 +488,7 @@ @@ -1204,7 +1204,7 @@ @@ -1678,7 +1678,7 @@ @@ -1703,11 +1703,11 @@ > diff --git a/res/ReadMe.txt b/res/ReadMe.txt index 4689b623..bc90ec6e 100644 --- a/res/ReadMe.txt +++ b/res/ReadMe.txt @@ -10,4 +10,15 @@ http://www.gnu.org/licenses/gpl.html Aim: Combine the best features of the VBA forks in one build. -Multi-platform support. \ No newline at end of file +Multi-platform support. + + + +=================== +System Requirements +=================== + +OS: Windows 2000 - Vista (x86 or x64) +CPU: 700MHz minimum for GBA emulation +RAM: ~64MB free +GFX: ~32MB VRAM, DirectX9 drivers \ No newline at end of file diff --git a/res/resource.h b/res/resource.h deleted file mode 100644 index cb23d40b..00000000 --- a/res/resource.h +++ /dev/null @@ -1,749 +0,0 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by VBA.rc -// -#define IDS_UNSUPPORTED_VBA_SGM 1 -#define IDS_CANNOT_LOAD_SGM 2 -#define IDS_SAVE_GAME_NOT_USING_BIOS 3 -#define IDS_SAVE_GAME_USING_BIOS 4 -#define IDS_UNSUPPORTED_SAVE_TYPE 5 -#define IDS_CANNOT_OPEN_FILE 6 -#define IDS_BAD_ZIP_FILE 7 -#define IDS_NO_IMAGE_ON_ZIP 8 -#define IDS_ERROR_OPENING_IMAGE 9 -#define IDS_ERROR_READING_IMAGE 10 -#define IDS_UNSUPPORTED_BIOS_FUNCTION 11 -#define IDS_INVALID_BIOS_FILE_SIZE 12 -#define IDS_INVALID_CHEAT_CODE 13 -#define IDS_UNKNOWN_ARM_OPCDOE 14 -#define IDS_UNKNOWN_THUMB_OPCODE 15 -#define IDS_ERROR_CREATING_FILE 16 -#define IDS_FAILED_TO_READ_SGM 17 -#define IDS_FAILED_TO_READ_RTC 18 -#define IDS_UNSUPPORTED_VB_SGM 19 -#define IDS_CANNOT_LOAD_SGM_FOR 20 -#define IDS_ERROR_OPENING_IMAGE_FROM 21 -#define IDS_ERROR_READING_IMAGE_FROM 22 -#define IDS_UNSUPPORTED_ROM_SIZE 23 -#define IDS_UNSUPPORTED_RAM_SIZE 24 -#define IDS_UNKNOWN_CARTRIDGE_TYPE 25 -#define IDS_MAXIMUM_NUMBER_OF_CHEATS 26 -#define IDS_INVALID_GAMESHARK_CODE 27 -#define IDS_INVALID_GAMEGENIE_CODE 28 -#define IDS_INVALID_CHEAT_TO_REMOVE 29 -#define IDS_INVALID_CHEAT_CODE_ADDRESS 30 -#define IDS_UNSUPPORTED_CHEAT_LIST_VERSION 31 -#define IDS_UNSUPPORTED_CHEAT_LIST_TYPE 32 -#define IDS_INVALID_GSA_CODE 33 -#define IDS_CANNOT_IMPORT_SNAPSHOT_FOR 34 -#define IDS_UNSUPPORTED_SNAPSHOT_FILE 35 -#define IDS_UNSUPPORTED_ARM_MODE 36 -#define IDS_UNSUPPORTED_CODE_FILE 37 -#define IDS_GSA_CODE_WARNING 38 -#define IDS_INVALID_CBA_CODE 39 -#define IDS_CBA_CODE_WARNING 40 -#define IDS_OUT_OF_MEMORY 41 -#define IDI_ICON 101 -#define IDR_MENU 104 -#define IDD_ABOUT 105 -#define IDR_ACCELERATOR 106 -#define IDD_CHEATS 107 -#define IDD_ADD_CHEAT 108 -#define IDD_DIRECTORIES 109 -#define IDD_CONFIG 110 -#define IDD_CHEAT_LIST 113 -#define IDD_ASSOCIATIONS 114 -#define IDD_GBA_ROM_INFO 116 -#define IDD_GB_ROM_INFO 117 -#define IDD_GB_CHEAT_LIST 118 -#define IDD_ADD_CHEAT_DLG 119 -#define IDD_GB_PRINTER 120 -#define IDD_MOTION_CONFIG 121 -#define IDD_LANG_SELECT 122 -#define IDD_CODE_SELECT 123 -#define IDD_OPENDLG 124 -#define IDD_MAP_VIEW 126 -#define IDD_PALETTE_VIEW 127 -#define IDD_MEM_VIEWER 128 -#define IDD_OAM_VIEW 130 -#define IDD_ACCEL_EDITOR 131 -#define IDD_TILE_VIEWER 132 -#define IDD_GB_COLORS 133 -#define IDD_DISASSEMBLE 134 -#define IDD_GDB_PORT 135 -#define IDD_GDB_WAITING 136 -#define IDD_LOGGING 137 -#define IDD_EXPORT_SPS 138 -#define IDD_ADDR_SIZE 139 -#define IDD_MODES 140 -#define IDD_DRIVERS 142 -#define IDD_THROTTLE 143 -#define IDD_GB_DISASSEMBLE 144 -#define IDD_GB_OAM_VIEW 145 -#define IDD_GB_TILE_VIEWER 146 -#define IDD_GB_MAP_VIEW 147 -#define IDD_GB_PALETTE_VIEW 148 -#define IDD_MODE_CONFIRM 149 -#define IDD_REWIND_INTERVAL 150 -#define IDD_IO_VIEWER 151 -#define IDD_MAX_SCALE 154 -#define IDD_BUG_REPORT 155 -#define IDD_UNIVIDMODE 158 -#define IDC_R0 1000 -#define IDC_EDIT_UP 1000 -#define IDC_R1 1001 -#define IDC_EDIT_DOWN 1001 -#define IDC_R2 1002 -#define IDC_EDIT_LEFT 1002 -#define IDC_R3 1003 -#define IDC_EDIT_RIGHT 1003 -#define IDC_R4 1004 -#define IDC_EDIT_BUTTON_A 1004 -#define IDC_R5 1005 -#define IDC_EDIT_BUTTON_B 1005 -#define IDC_R6 1006 -#define IDC_EDIT_BUTTON_SELECT 1006 -#define IDC_R7 1007 -#define IDC_EDIT_BUTTON_START 1007 -#define IDC_R8 1008 -#define ID_OK 1008 -#define IDC_R9 1009 -#define ID_CANCEL 1009 -#define ID_SAVE 1009 -#define IDC_R10 1010 -#define IDC_EDIT_SPEED 1010 -#define IDC_R11 1011 -#define IDC_EDIT_CAPTURE 1011 -#define IDC_R12 1012 -#define IDC_EDIT_BUTTON_L 1012 -#define IDC_R13 1013 -#define IDC_EDIT_BUTTON_GS 1013 -#define IDC_R14 1014 -#define IDC_EDIT_BUTTON_R 1014 -#define IDC_R15 1015 -#define IDC_R16 1016 -#define IDC_ROM_DIR 1018 -#define IDC_NEXT 1019 -#define IDC_BATTERY_DIR 1019 -#define IDC_SAVE_DIR 1020 -#define IDC_CAPTURE_DIR 1021 -#define IDC_CHEAT_LIST 1021 -#define IDC_ROM_PATH 1022 -#define IDC_START 1022 -#define IDC_BATTERY_PATH 1023 -#define IDC_SEARCH 1023 -#define IDS_DIRECTX_7_REQUIRED 1024 -#define IDC_SAVE_PATH 1024 -#define IDC_ADD_CHEAT 1024 -#define IDC_CAPTURE_PATH 1025 -#define IDC_OLD_VALUE 1025 -#define IDC_ADD_GS_CHEAT 1025 -#define IDS_DISABLING_VIDEO_MEMORY 1025 -#define IDC_ADD_GAMESHARK 1025 -#define IDC_SPECIFIC_VALUE 1026 -#define IDS_SETTING_WILL_BE_EFFECTIVE 1026 -#define IDC_GBROM_DIR 1026 -#define IDS_DISABLING_EMULATION_ONLY 1027 -#define IDC_GBROM_PATH 1027 -#define IDC_SIZE_8 1028 -#define IDS_FAILED_TO_OPEN_FILE 1028 -#define IDC_ROM_DIR_RESET 1028 -#define IDC_SIZE_16 1029 -#define IDS_FAILED_TO_READ_ZIP_DIR 1029 -#define IDC_GBROM_DIR_RESET 1029 -#define IDC_SIZE_32 1030 -#define IDS_UNSUPPORTED_FILE_TYPE 1030 -#define IDC_BATTERY_DIR_RESET 1030 -#define IDC_EQ 1031 -#define IDS_CANNOT_CREATE_DIRECTSOUND 1031 -#define IDC_SAVE_DIR_RESET 1031 -#define IDC_NE 1032 -#define IDS_CANNOT_SETCOOPERATIVELEVEL 1032 -#define IDC_CAPTURE_DIR_RESET 1032 -#define IDC_LT 1033 -#define IDS_CANNOT_CREATESOUNDBUFFER 1033 -#define IDC_LE 1034 -#define IDS_CANNOT_SETFORMAT_PRIMARY 1034 -#define IDC_GT 1035 -#define IDS_CANNOT_CREATESOUNDBUFFER_SEC 1035 -#define IDC_GE 1036 -#define IDS_CANNOT_PLAY_PRIMARY 1036 -#define IDC_SIGNED 1037 -#define IDS_SEARCH_PRODUCED_TOO_MANY 1037 -#define IDC_UNSIGNED 1038 -#define IDS_NUMBER_CANNOT_BE_EMPTY 1038 -#define IDS_INVALID_ADDRESS 1039 -#define IDC_HEXADECIMAL 1040 -#define IDS_MISALIGNED_HALFWORD 1040 -#define IDC_VALUE 1041 -#define IDS_MISALIGNED_WORD 1041 -#define IDC_ADDRESS 1042 -#define IDS_VALUE_CANNOT_BE_EMPTY 1042 -#define IDS_ERROR_ON_STARTDOC 1043 -#define IDC_R 1043 -#define IDS_ERROR_ON_STARTPAGE 1044 -#define IDC_G 1044 -#define IDS_ERROR_PRINTING_ON_STRETCH 1045 -#define IDC_B 1045 -#define IDC_UPDATE 1046 -#define IDS_ERROR_ON_ENDPAGE 1046 -#define IDC_TILE_NUM 1046 -#define IDS_ERROR_ON_ENDDOC 1047 -#define IDC_FLIP 1047 -#define IDS_ERROR 1048 -#define IDC_PALETTE_NUM 1048 -#define IDS_JOY_LEFT 1049 -#define IDS_JOY_RIGHT 1050 -#define IDS_JOY_UP 1051 -#define IDS_JOY_DOWN 1052 -#define IDS_JOY_BUTTON 1053 -#define IDS_SELECT_ROM_DIR 1054 -#define IDS_SELECT_BATTERY_DIR 1055 -#define IDS_SELECT_SAVE_DIR 1056 -#define IDS_SELECT_CAPTURE_DIR 1057 -#define IDS_SELECT_BIOS_FILE 1058 -#define IDS_RESET 1059 -#define IDS_AUTOFIRE_A_DISABLED 1060 -#define IDS_AUTOFIRE_A 1061 -#define IDS_AUTOFIRE_B_DISABLED 1062 -#define IDS_AUTOFIRE_B 1063 -#define IDS_AUTOFIRE_L_DISABLED 1064 -#define IDS_AUTOFIRE_L 1065 -#define IDS_AUTOFIRE_R_DISABLED 1066 -#define IDC_REMOVE 1067 -#define IDS_AUTOFIRE_R 1067 -#define IDC_REMOVE_ALL 1068 -#define IDS_SELECT_ROM 1068 -#define IDS_SELECT_SAVE_GAME_NAME 1069 -#define IDC_ENABLE 1070 -#define IDS_LOADED_STATE 1070 -#define IDS_LOADED_STATE_N 1071 -#define IDS_WROTE_STATE 1072 -#define IDS_WROTE_STATE_N 1073 -#define IDC_RESTORE 1074 -#define IDS_LOADED_BATTERY 1074 -#define IDC_GBA 1075 -#define IDS_SELECT_CAPTURE_NAME 1075 -#define IDC_AGB 1076 -#define IDS_SCREEN_CAPTURE 1076 -#define IDC_BIN 1077 -#define IDS_ADDRESS 1077 -#define IDC_GB 1078 -#define IDS_OLD_VALUE 1078 -#define IDC_SGB 1079 -#define IDC_ROM_TITLE 1079 -#define IDS_NEW_VALUE 1079 -#define IDC_CGB 1080 -#define IDC_ROM_GAME_CODE 1080 -#define IDS_ADD_CHEAT_CODE 1080 -#define IDC_GBC 1081 -#define IDC_ROM_MAKER_CODE 1081 -#define IDS_CODE 1081 -#define IDC_ROM_UNIT_CODE 1082 -#define IDS_DESCRIPTION 1082 -#define IDC_ROM_DEVICE_TYPE 1083 -#define IDS_STATUS 1083 -#define IDC_ROM_VERSION 1084 -#define IDS_ADD_GG_CODE 1084 -#define IDC_ROM_CRC 1085 -#define IDS_ADD_GS_CODE 1085 -#define IDC_ROM_COLOR 1086 -#define IDC_CODE 1086 -#define IDS_POCKET_PRINTER 1086 -#define IDC_ROM_MAKER_NAME 1086 -#define IDC_ROM_SIZE 1087 -#define IDC_DESC 1087 -#define IDS_UNKNOWN 1087 -#define IDC_ROM_RAM_SIZE 1088 -#define IDC_ADD_GG_CHEAT 1088 -#define IDS_NONE 1088 -#define IDC_ROM_DEST_CODE 1089 -#define IDC_GB_PRINTER 1089 -#define IDS_FAILED_TO_LOAD_LIBRARY 1089 -#define IDC_ROM_LIC_CODE 1090 -#define IDC_1X 1090 -#define IDS_FAILED_TO_GET_LOCINFO 1090 -#define IDC_ROM_CHECKSUM 1091 -#define IDC_2X 1091 -#define IDS_SELECT_CHEAT_LIST_NAME 1091 -#define IDC_3X 1092 -#define IDS_FILTER_BIOS 1092 -#define IDC_4X 1093 -#define IDS_FILTER_ROM 1093 -#define IDC_ROM_MAKER_NAME2 1093 -#define ID_PRINT 1094 -#define IDS_FILTER_SGM 1094 -#define IDC_ADD_CODE 1095 -#define IDS_FILTER_CHEAT_LIST 1095 -#define IDS_FILTER_PNG 1096 -#define IDC_LANG_STRING 1097 -#define IDS_LOADED_CHEATS 1097 -#define IDC_LANG_NAME 1098 -#define IDS_ERROR_DISP_COLOR 1098 -#define IDS_ADD_GSA_CODE 1099 -#define IDC_GAME_LIST 1099 -#define IDS_FILTER_SPS 1100 -#define IDS_SELECT_SNAPSHOT_FILE 1101 -#define IDC_ADD_CODEBREAKER 1101 -#define IDS_FILTER_SAV 1102 -#define IDS_SELECT_BATTERY_FILE 1103 -#define IDS_FILTER_GBS 1104 -#define IDS_FILTER_GCF 1105 -#define IDS_SELECT_CODE_FILE 1106 -#define IDS_SAVE_WILL_BE_LOST 1107 -#define IDS_CONFIRM_ACTION 1108 -#define IDS_CODES_WILL_BE_LOST 1109 -#define IDS_FILTER_SPC 1110 -#define IDS_ADD_CBA_CODE 1111 -#define IDS_FILTER_WAV 1112 -#define IDS_SELECT_WAV_NAME 1113 -#define IDC_FRAME_0 1113 -#define IDS_FILTER_GBROM 1114 -#define IDC_FRAME_1 1114 -#define IDC_BG0 1115 -#define IDS_FILTER_PAL 1115 -#define IDC_BG1 1116 -#define IDS_SELECT_PALETTE_NAME 1116 -#define IDC_BG2 1117 -#define IDS_SEARCH_PRODUCED_NO_RESULTS 1117 -#define IDC_BG3 1118 -#define IDS_ERROR_BINDING 1118 -#define IDS_ERROR_LISTENING 1119 -#define IDS_ERROR_CREATING_SOCKET 1120 -#define IDS_ACK_NOT_RECEIVED 1121 -#define IDS_ERROR_NOT_GBA_IMAGE 1122 -#define IDS_EEPROM_NOT_SUPPORTED 1123 -#define IDC_MAP_VIEW 1124 -#define IDS_FILTER_DUMP 1124 -#define IDC_PALETTE_VIEW 1125 -#define IDS_SELECT_DUMP_FILE 1125 -#define IDC_PALETTE_VIEW_OBJ 1126 -#define IDC_REFRESH 1126 -#define IDS_FILTER_AVI 1126 -#define IDC_SAVE 1127 -#define IDC_GOPC 1127 -#define IDS_SELECT_AVI_NAME 1127 -#define IDC_APPLY 1127 -#define IDS_INVALID_THROTTLE_VALUE 1128 -#define IDC_REFRESH2 1129 -#define IDS_FILTER_INI 1129 -#define IDC_CLOSE 1131 -#define IDS_FILTER_VMV 1131 -#define IDS_SELECT_MOVIE_NAME 1132 -#define IDS_BUG_REPORT 1133 -#define IDS_UNSUPPORTED_MOVIE_VERSION 1134 -#define IDS_END_OF_MOVIE 1135 -#define IDC_COLOR 1136 -#define IDS_INVALID_INTERVAL_VALUE 1136 -#define IDC_SAVE_BG 1137 -#define IDS_REGISTRY 1137 -#define IDC_SAVE_OBJ 1138 -#define IDC_MAP_VIEW_ZOOM 1138 -#define IDS_MOVIE_PLAY 1138 -#define IDC_VIEWER 1140 -#define IDC_ADDRESSES 1141 -#define IDC_GO 1143 -#define IDC_8_BIT 1144 -#define IDC_16_BIT 1145 -#define IDC_32_BIT 1146 -#define IDC_OAM_VIEW 1147 -#define IDC_OAM_VIEW_ZOOM 1148 -#define IDC_SPRITE 1150 -#define IDC_POS 1151 -#define IDC_MODE 1152 -#define IDC_COLORS 1153 -#define IDC_MAPBASE 1153 -#define IDC_PALETTE 1154 -#define IDC_CHARBASE 1154 -#define IDC_TILE 1155 -#define IDC_DIM 1155 -#define IDC_PRIO 1156 -#define IDC_NUMCOLORS 1156 -#define IDC_SCROLLBAR 1157 -#define IDC_PRIORITY 1157 -#define IDC_MOSAIC 1158 -#define IDC_SIZE2 1159 -#define IDC_OVERFLOW 1159 -#define IDC_ROT 1160 -#define IDC_FLAGS 1161 -#define IDC_COMMANDS 1162 -#define IDC_BANK 1162 -#define IDC_CURRENTS 1163 -#define IDC_ASSIGN 1164 -#define IDC_RESET 1165 -#define IDC_EDIT_KEY 1166 -#define IDC_ALREADY_AFFECTED 1167 -#define IDC_TILE_VIEW 1168 -#define IDC_16_COLORS 1169 -#define IDC_256_COLORS 1170 -#define IDC_CHARBASE_0 1173 -#define IDC_CHARBASE_1 1174 -#define IDC_CHARBASE_2 1175 -#define IDC_CHARBASE_3 1176 -#define IDC_PALETTE_SLIDER 1177 -#define IDC_CHARBASE_4 1178 -#define IDC_COLOR_BG0 1178 -#define IDC_COLOR_BG1 1179 -#define IDC_URL 1179 -#define IDC_COLOR_BG2 1180 -#define IDC_STRETCH 1180 -#define IDC_URL2 1180 -#define IDC_COLOR_BG3 1181 -#define IDC_URL3 1181 -#define IDC_COLOR_OB0 1182 -#define IDC_COLOR_OB1 1183 -#define IDC_COLOR_OB2 1184 -#define IDC_COLOR_OB3 1185 -#define IDC_STATIC1 1187 -#define IDC_STATIC2 1188 -#define IDC_STATIC3 1189 -#define IDC_DEFAULT 1191 -#define IDC_USER1 1192 -#define IDC_USER2 1193 -#define IDC_DISASSEMBLE 1196 -#define IDC_AUTOMATIC 1199 -#define IDC_ARM 1200 -#define IDC_THUMB 1201 -#define IDC_AUTO_UPDATE 1204 -#define IDC_N 1210 -#define IDC_Z 1211 -#define IDC_C 1212 -#define IDC_V 1213 -#define IDC_F 1214 -#define IDC_I 1215 -#define IDC_T 1216 -#define IDC_PORT 1217 -#define IDC_VSCROLL 1218 -#define IDC_VERSION 1219 -#define IDC_VERBOSE_SWI 1223 -#define IDC_VERBOSE_UNALIGNED_ACCESS 1224 -#define IDC_VERBOSE_ILLEGAL_WRITE 1225 -#define IDC_VERBOSE_ILLEGAL_READ 1226 -#define IDC_LOG 1227 -#define IDC_CLEAR 1228 -#define IDC_VERBOSE_DMA0 1229 -#define IDC_VERBOSE_DMA1 1230 -#define IDC_TILE_NUMBER 1230 -#define IDC_VERBOSE_DMA2 1231 -#define IDC_XY 1231 -#define IDC_VERBOSE_DMA3 1232 -#define IDC_VERBOSE_UNDEFINED 1233 -#define IDC_TITLE 1234 -#define IDC_VERBOSE_AGBPRINT 1234 -#define IDC_CURRENT_ADDRESS 1235 -#define IDC_NOTES 1236 -#define IDC_CURRENT_ADDRESS_LABEL 1236 -#define IDC_LOAD 1238 -#define IDC_SIZE_CONTROL 1240 -#define IDC_MODES 1240 -#define IDC_DRIVERS 1241 -#define IDC_THROTTLE 1242 -#define IDC_H 1243 -#define IDC_OAP 1244 -#define IDC_BANK_0 1245 -#define IDC_BANK_1 1246 -#define IDC_TIMER 1247 -#define IDC_INTERVAL 1248 -#define IDC_BIT_0 1250 -#define IDC_BIT_1 1251 -#define IDC_PREDEFINED 1251 -#define IDC_BIT_2 1252 -#define IDC_BUG_REPORT 1252 -#define IDC_BIT_3 1253 -#define IDC_COPY 1253 -#define IDC_BIT_4 1254 -#define IDC_APINAME 1254 -#define IDC_BIT_5 1255 -#define IDC_DISPLAYDEVICE 1255 -#define IDC_BIT_6 1256 -#define IDC_LISTMODES 1256 -#define IDC_BIT_7 1257 -#define IDC_BIT_8 1258 -#define IDC_BIT_9 1259 -#define IDC_BUTTON1 1259 -#define IDC_BUTTON_MAXSCALE 1259 -#define IDC_BIT_10 1260 -#define IDC_CHECK_STRETCHTOFIT 1260 -#define IDC_BIT_11 1261 -#define IDC_CHECK1 1261 -#define IDC_APPENDMODE 1261 -#define IDC_BIT_12 1262 -#define IDC_BIT_13 1263 -#define IDC_BIT_14 1264 -#define IDC_BIT_15 1265 -#define ID_HELP_ABOUT 40001 -#define ID_FILE_EXIT 40002 -#define ID_OPTIONS_VIDEO_FRAMESKIP_0 40003 -#define ID_OPTIONS_VIDEO_FRAMESKIP_1 40004 -#define ID_OPTIONS_VIDEO_FRAMESKIP_2 40005 -#define ID_OPTIONS_VIDEO_FRAMESKIP_3 40006 -#define ID_OPTIONS_VIDEO_FRAMESKIP_4 40007 -#define ID_OPTIONS_VIDEO_FRAMESKIP_5 40008 -#define ID_OPTIONS_VIDEO_VSYNC 40009 -#define ID_OPTIONS_VIDEO_X1 40010 -#define ID_OPTIONS_VIDEO_X2 40011 -#define ID_OPTIONS_VIDEO_X3 40012 -#define ID_OPTIONS_VIDEO_X4 40013 -#define ID_FILE_PAUSE 40014 -#define ID_OPTIONS_EMULATOR_DIRECTORIES 40015 -#define ID_OPTIONS_EMULATOR_SYNCHRONIZE 40017 -#define ID_FILE_RESET 40018 -#define ID_FILE_LOAD 40019 -#define ID_OPTIONS_SOUND_DIRECTSOUNDA 40020 -#define ID_OPTIONS_SOUND_DIRECTSOUNDB 40021 -#define ID_OPTIONS_SOUND_OFF 40022 -#define ID_OPTIONS_SOUND_MUTE 40023 -#define ID_OPTIONS_SOUND_ON 40024 -#define ID_OPTIONS_SOUND_CHANNEL1 40025 -#define ID_OPTIONS_SOUND_CHANNEL2 40026 -#define ID_OPTIONS_SOUND_CHANNEL3 40027 -#define ID_OPTIONS_SOUND_CHANNEL4 40028 -#define ID_OPTIONS_EMULATOR_USEBIOSFILE 40029 -#define ID_OPTIONS_EMULATOR_SELECTBIOSFILE 40030 -#define ID_CHEATS_SEARCHFORCHEATS 40031 -#define ID_OPTIONS_VIDEO_DISABLESFX 40033 -#define ID_OPTIONS_GAMEBOY_BORDER 40034 -#define ID_FILE_SAVEGAME_SLOT1 40035 -#define ID_FILE_SAVEGAME_SLOT2 40036 -#define ID_FILE_SAVEGAME_SLOT3 40037 -#define ID_FILE_SAVEGAME_SLOT4 40038 -#define ID_FILE_SAVEGAME_SLOT5 40039 -#define ID_FILE_SAVEGAME_SLOT6 40040 -#define ID_FILE_SAVEGAME_SLOT7 40041 -#define ID_FILE_SAVEGAME_SLOT8 40042 -#define ID_FILE_SAVEGAME_SLOT9 40043 -#define ID_FILE_SAVEGAME_SLOT10 40044 -#define ID_FILE_LOADGAME_SLOT1 40045 -#define ID_FILE_LOADGAME_SLOT2 40046 -#define ID_FILE_LOADGAME_SLOT3 40047 -#define ID_FILE_LOADGAME_SLOT4 40048 -#define ID_FILE_LOADGAME_SLOT5 40049 -#define ID_FILE_LOADGAME_SLOT6 40050 -#define ID_FILE_LOADGAME_SLOT7 40051 -#define ID_FILE_LOADGAME_SLOT8 40052 -#define ID_FILE_LOADGAME_SLOT9 40053 -#define ID_FILE_LOADGAME_SLOT10 40054 -#define ID_OPTIONS_GAMEBOY_AUTOMATIC 40057 -#define ID_OPTIONS_GAMEBOY_CGB 40058 -#define ID_OPTIONS_GAMEBOY_GBA 40059 -#define ID_OPTIONS_GAMEBOY_SGB 40060 -#define ID_OPTIONS_GAMEBOY_GB 40062 -#define ID_OPTIONS_GAMEBOY_REALCOLORS 40063 -#define ID_OPTIONS_GAMEBOY_GAMEBOYCOLORS 40064 -#define ID_OPTIONS_SOUND_11KHZ 40067 -#define ID_OPTIONS_SOUND_22KHZ 40068 -#define ID_OPTIONS_SOUND_44KHZ 40069 -#define ID_OPTIONS_VIDEO_DDRAWEMULATIONONLY 40070 -#define ID_OPTIONS_VIDEO_DDRAWUSEVIDEOMEMORY 40071 -#define ID_OPTIONS_PRIORITY_HIGHEST 40072 -#define ID_OPTIONS_PRIORITY_ABOVENORMAL 40073 -#define ID_OPTIONS_PRIORITY_NORMAL 40074 -#define ID_OPTIONS_PRIORITY_BELOWNORMAL 40075 -#define ID_OPTIONS_VIDEO_FULLSCREEN320X240 40076 -#define ID_OPTIONS_VIDEO_FULLSCREEN640X480 40077 -#define ID_OPTIONS_FILTER_NORMAL 40078 -#define ID_OPTIONS_FILTER_2XSAI 40079 -#define ID_OPTIONS_FILTER_SUPER2XSAI 40081 -#define ID_OPTIONS_FILTER_SUPEREAGLE 40082 -#define ID_OPTIONS_FILTER_TVMODE 40083 -#define ID_CHEATS_CHEATLIST 40084 -#define ID_OPTIONS_JOYPAD_AUTOFIRE_A 40085 -#define ID_OPTIONS_JOYPAD_AUTOFIRE_B 40086 -#define ID_OPTIONS_JOYPAD_AUTOFIRE_L 40087 -#define ID_OPTIONS_JOYPAD_AUTOFIRE_R 40088 -#define ID_OPTIONS_VIDEO_FULLSCREENSTRETCHTOFIT 40089 -#define ID_OPTIONS_EMULATOR_ASSOCIATE 40091 -#define ID_OPTIONS_FILTER_DISABLEMMX 40093 -#define ID_FILE_ROMINFORMATION 40100 -#define ID_OPTIONS_EMULATOR_DISABLESTATUSMESSAGES 40102 -#define ID_OPTIONS_JOYPAD_MOTIONCONFIGURE 40103 -#define ID_FILE_SCREENCAPTURE 40104 -#define ID_OPTIONS_LANGUAGE_SYSTEM 40105 -#define ID_OPTIONS_LANGUAGE_ENGLISH 40106 -#define ID_OPTIONS_LANGUAGE_OTHER 40107 -#define ID_OPTIONS_GAMEBOY_PRINTER 40108 -#define ID_FILE_RECENT_RESET 40109 -#define ID_CHEATS_SAVECHEATLIST 40110 -#define ID_CHEATS_LOADCHEATLIST 40111 -#define ID_CHEATS_AUTOMATICSAVELOADCHEATS 40112 -#define ID_FILE_IMPORT_GAMESHARKSNAPSHOT 40115 -#define ID_FILE_IMPORT_BATTERYFILE 40116 -#define ID_FILE_IMPORT_GAMESHARKCODEFILE 40117 -#define ID_FILE_EXPORT_BATTERYFILE 40118 -#define ID_OPTIONS_FILTER16BIT_PIXELATEEXPERIMENTAL 40121 -#define ID_OPTIONS_EMULATOR_PAUSEWHENINACTIVE 40124 -#define ID_OPTIONS_SOUND_STARTRECORDING 40125 -#define ID_OPTIONS_SOUND_STOPRECORDING 40126 -#define ID_OPTIONS_VIDEO_LAYERS_BG0 40127 -#define ID_OPTIONS_VIDEO_LAYERS_BG1 40128 -#define ID_OPTIONS_VIDEO_LAYERS_BG2 40129 -#define ID_OPTIONS_VIDEO_LAYERS_BG3 40130 -#define ID_OPTIONS_VIDEO_LAYERS_OBJ 40131 -#define ID_OPTIONS_VIDEO_LAYERS_WIN0 40132 -#define ID_OPTIONS_VIDEO_LAYERS_WIN1 40133 -#define ID_OPTIONS_VIDEO_LAYERS_OBJWIN 40134 -#define ID_FILE_OPENGAMEBOY 40135 -#define ID_OPTIONS_SOUND_USEOLDSYNCHRONIZATION 40136 -#define ID_DEBUG_NEXTFRAME 40137 -#define ID_TOOLS_MAPVIEW 40138 -#define ID_TOOLS_PALETTEVIEW 40139 -#define ID_OPTIONS_EMULATOR_PNGFORMAT 40140 -#define ID_OPTIONS_EMULATOR_BMPFORMAT 40141 -#define ID_TOOLS_MEMORYVIEWER 40143 -#define ID_TOOLS_OAMVIEWER 40144 -#define ID_TOOLS_CUSTOMIZE 40145 -#define ID_TOOLS_TILEVIEWER 40146 -#define ID_OPTIONS_GAMEBOY_COLORS 40147 -#define ID_OPTIONS_SOUND_ECHO 40148 -#define ID_OPTIONS_SOUND_LOWPASSFILTER 40149 -#define ID_OPTIONS_SOUND_REVERSESTEREO 40150 -#define ID_TOOLS_DISASSEMBLE 40151 -#define ID_TOOLS_DEBUG_GDB 40152 -#define ID_TOOLS_DEBUG_LOADANDWAIT 40153 -#define ID_TOOLS_DEBUG_DISCONNECT 40154 -#define ID_TOOLS_DEBUG_BREAK 40155 -#define ID_TOOLS_LOGGING 40156 -#define ID_OPTIONS_EMULATOR_SPEEDUPTOGGLE 40158 -#define ID_OPTIONS_EMULATOR_REMOVEINTROSGBA 40159 -#define ID_OPTIONS_FILTER16BIT_ADVANCEMAMESCALE2X 40160 -#define ID_OPTIONS_FILTER16BIT_SIMPLE2X 40161 -#define ID_FILE_RECENT_FREEZE 40162 -#define ID_FILE_EXPORT_GAMESHARKSNAPSHOT 40163 -#define ID_OPTIONS_VIDEO_FULLSCREEN800X600 40164 -#define ID_OPTIONS_VIDEO_FRAMESKIP_6 40165 -#define ID_OPTIONS_VIDEO_FRAMESKIP_7 40166 -#define ID_OPTIONS_VIDEO_FRAMESKIP_8 40167 -#define ID_OPTIONS_VIDEO_FRAMESKIP_9 40168 -#define ID_OPTIONS_EMULATOR_SAVETYPE_AUTOMATIC 40169 -#define ID_OPTIONS_EMULATOR_SAVETYPE_EEPROM 40170 -#define ID_OPTIONS_EMULATOR_SAVETYPE_SRAM 40171 -#define ID_OPTIONS_EMULATOR_SAVETYPE_FLASH 40172 -#define ID_OPTIONS_EMULATOR_SAVETYPE_EEPROMSENSOR 40173 -#define ID_OPTIONS_EMULATOR_SAVETYPE_FLASH512K 40174 -#define ID_OPTIONS_EMULATOR_SAVETYPE_FLASH1M 40175 -#define ID_OPTIONS_EMULATOR_AUTOMATICALLYIPSPATCH 40176 -#define ID_TOOLS_RECORD_STARTAVIRECORDING 40178 -#define ID_TOOLS_RECORD_STOPAVIRECORDING 40179 -#define ID_OPTIONS_SOUND_VOLUME_1X 40182 -#define ID_OPTIONS_SOUND_VOLUME_2X 40183 -#define ID_OPTIONS_SOUND_VOLUME_3X 40184 -#define ID_OPTIONS_SOUND_VOLUME_4X 40185 -#define ID_OPTIONS_FILTER_BILINEAR 40186 -#define ID_OPTIONS_FILTER_BILINEARPLUS 40187 -#define ID_OPTIONS_FILTER_INTERFRAMEBLENDING_NONE 40188 -#define ID_OPTIONS_FILTER_INTERFRAMEBLENDING_MOTIONBLUR 40189 -#define ID_OPTIONS_FILTER_INTERFRAMEBLENDING_SMART 40190 -#define ID_OPTIONS_VIDEO_FULLSCREEN 40191 -#define ID_OPTIONS_VIDEO_TRIPLEBUFFERING 40192 -#define ID_OPTIONS_FRAMESKIP_AUTOMATIC 40194 -#define ID_OPTIONS_EMULATOR_SHOWSPEED_NONE 40195 -#define ID_OPTIONS_EMULATOR_SHOWSPEED_PERCENTAGE 40196 -#define ID_OPTIONS_EMULATOR_SHOWSPEED_DETAILED 40197 -#define ID_OPTIONS_EMULATOR_SHOWSPEED_TRANSPARENT 40198 -#define ID_OPTIONS_JOYPAD_CONFIGURE_1 40199 -#define ID_OPTIONS_JOYPAD_CONFIGURE_2 40200 -#define ID_OPTIONS_JOYPAD_CONFIGURE_3 40201 -#define ID_OPTIONS_JOYPAD_CONFIGURE_4 40202 -#define ID_OPTIONS_JOYPAD_DEFAULTJOYPAD_1 40208 -#define ID_OPTIONS_JOYPAD_DEFAULTJOYPAD_2 40209 -#define ID_OPTIONS_JOYPAD_DEFAULTJOYPAD_3 40210 -#define ID_OPTIONS_JOYPAD_DEFAULTJOYPAD_4 40211 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_NOTHROTTLE 40216 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_50 40217 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_150 40218 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_200 40219 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_25 40220 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_OTHER 40221 -#define ID_OPTIONS_FRAMESKIP_THROTTLE_100 40222 -#define ID_OPTIONS_FILTER_SCANLINES 40223 -#define ID_OPTIONS_VIDEO_RENDERMETHOD_GDI 40228 -#define ID_OPTIONS_VIDEO_RENDERMETHOD_DIRECTDRAW 40229 -#define ID_OPTIONS_VIDEO_RENDERMETHOD_DIRECT3D 40230 -#define ID_OPTIONS_VIDEO_RENDERMETHOD_OPENGL 40231 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_D3DNOFILTER 40233 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_D3DBILINEAR 40234 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_GLNEAREST 40237 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_GLBILINEAR 40238 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_GLTRIANGLE 40239 -#define ID_OPTIONS_VIDEO_RENDEROPTIONS_GLQUADS 40240 -#define ID_OPTIONS_EMULATOR_REALTIMECLOCK 40248 -#define ID_OPTIONS_GAMEBOY_SGB2 40249 -#define ID_TOOLS_RECORD_STARTMOVIERECORDING 40251 -#define ID_TOOLS_RECORD_STOPMOVIERECORDING 40252 -#define ID_TOOLS_PLAY_STARTMOVIEPLAYING 40253 -#define ID_TOOLS_PLAY_STOPMOVIEPLAYING 40254 -#define ID_OPTIONS_EMULATOR_AUTOHIDEMENU 40255 -#define ID_OPTIONS_GAMEBOY_BORDERAUTOMATIC 40256 -#define ID_TOOLS_REWIND 40258 -#define ID_OPTIONS_EMULATOR_SKIPBIOS 40259 -#define ID_HELP_BUGREPORT 40260 -#define ID_HELP_FAQ 40261 -#define ID_OPTIONS_EMULATOR_REWINDINTERVAL 40262 -#define ID_FILE_TOGGLEMENU 40263 -#define ID_OPTIONS_EMULATOR_SAVETYPE_NONE 40264 -#define ID_OPTIONS_EMULATOR_SAVETYPE_ENHANCEDDETECTION 40265 -#define ID_TOOLS_IOVIEWER 40266 -#define ID_FILE_LOADGAME_MOSTRECENT 40267 -#define ID_FILE_SAVEGAME_OLDESTSLOT 40268 -#define ID_FILE_LOADGAME_AUTOLOADMOSTRECENT 40269 -#define ID_OPTIONS_SOUND_VOLUME_5X 40270 -#define ID_OPTIONS_SOUND_VOLUME_25X 40271 -#define ID_CHEATS_DISABLECHEATS 40272 -#define ID_OPTIONS_VIDEO_FULLSCREENMAXSCALE 40273 -#define ID_OPTIONS_FILTER_HQ2X 40274 -#define ID_OPTIONS_FILTER_LQ2X 40275 -#define ID_OPTIONS_EMULATOR_AGBPRINT 40281 -#define ID_OPTIONS_VIDEO_FULLSCREEN1024X768 40282 -#define ID_OPTIONS_VIDEO_FULLSCREEN1280X1024 40283 -#define ID_OPTIONS_FILTER_SIMPLE3X 40287 -#define ID_OPTIONS_FILTER_SIMPLE4X 40288 -#define ID_OPTIONS_FILTER_HQ3X 40290 -#define ID_OPTIONS_FILTER_HQ4X 40291 -#define ID_VIDEO_WINDOWED 40292 -#define ID_VIDEO_FULL 40293 -#define ID_OPTIONS_SOUND_PCMINTERPOLATION_NONE 40294 -#define ID_OPTIONS_SOUND_PCMINTERPOLATION_LINEAR 40295 -#define ID_OPTIONS_SOUND_PCMINTERPOLATION_CUBIC 40296 -#define ID_OPTIONS_SOUND_PCMINTERPOLATION_FIR 40297 -#define ID_OPTIONS_SOUND_PCMINTERPOLATION_LIBRESAMPLE 40298 -#define ID_OPTIONS_FILTER_LCDCOLORS 40299 -#define IDD_LINKTAB1 40300 -#define IDD_LINKTAB 40301 -#define IDD_LINKTAB2 40302 -#define IDD_LINKTAB3 40303 -#define IDD_SERVERWAIT 40304 -#define IDC_TAB1 40305 -#define IDC_LINK_SINGLE 40306 -#define IDC_LINK_TIMEOUT 40307 -#define IDC_LINK_LAN 40308 -#define IDC_LINK2P 40309 -#define IDC_LINKTCP 40310 -#define IDC_SSPEED 40311 -#define IDC_SERVERSTART 40312 -#define IDC_SERVERIP 40313 -#define IDC_CLINKIP 40314 -#define IDC_SPEEDOFF 40315 -#define IDC_LINKCONNECT 40316 -#define IDC_STATIC4 40317 -#define ID_OPTIONS_LINK_OPTIONS 40318 -#define ID_OPTIONS_LINK_LOG 40319 -#define ID_OPTIONS_LINK_WIRELESSADAPTER 40320 -#define IDC_LINKTIMEOUT 40321 -#define IDC_CLINKTCP 40322 -#define IDC_SERVERWAIT 40323 -#define IDC_LINKUDP 40324 -#define IDC_LINK3P 40325 -#define IDC_LINK4P 40326 -#define IDC_CLINKUDP 40327 -#define IDC_SPEEDON 40328 - -// Next default values for new objects -// -#ifdef APSTUDIO_INVOKED -#ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 159 -#define _APS_NEXT_COMMAND_VALUE 40300 -#define _APS_NEXT_CONTROL_VALUE 1262 -#define _APS_NEXT_SYMED_VALUE 103 -#endif -#endif diff --git a/src/win32/DirectDraw.cpp.orig b/src/win32/DirectDraw.cpp.orig deleted file mode 100644 index 6bd87567..00000000 --- a/src/win32/DirectDraw.cpp.orig +++ /dev/null @@ -1,845 +0,0 @@ -// VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. -// Copyright (C) 1999-2003 Forgotten -// Copyright (C) 2004 Forgotten and the VBA development team - -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2, or(at your option) -// any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software Foundation, -// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -#include "stdafx.h" - -#define DIRECTDRAW_VERSION 0x0700 -#include - -#include "../System.h" -#include "../gb/gbGlobals.h" -#include "../GBA.h" -#include "../Globals.h" -#include "../Text.h" -#include "../Util.h" - -#include "VBA.h" -#include "MainWnd.h" -#include "Reg.h" -#include "..\..\res\resource.h" - -#ifdef _DEBUG -#define new DEBUG_NEW -#undef THIS_FILE -static char THIS_FILE[] = __FILE__; -#endif - -extern int Init_2xSaI(u32); -extern void winlog(const char *,...); -extern int systemSpeed; -extern int winVideoModeSelect(CWnd *, GUID **); - -class DirectDrawDisplay : public IDisplay { -private: - HINSTANCE ddrawDLL; - LPDIRECTDRAW7 pDirectDraw; - LPDIRECTDRAWSURFACE7 ddsPrimary; - LPDIRECTDRAWSURFACE7 ddsOffscreen; - LPDIRECTDRAWSURFACE7 ddsFlip; - LPDIRECTDRAWCLIPPER ddsClipper; - int width; - int height; - bool failed; - - bool initializeOffscreen(int w, int h); -public: - DirectDrawDisplay(); - virtual ~DirectDrawDisplay(); - - virtual bool initialize(); - virtual void cleanup(); - virtual void render(); - virtual void checkFullScreen(); - virtual void renderMenu(); - virtual void clear(); - virtual bool changeRenderSize(int w, int h); - virtual DISPLAY_TYPE getType() { return DIRECT_DRAW; }; - virtual void setOption(const char *, int) {} - virtual int selectFullScreenMode(GUID **); -}; - -static HRESULT WINAPI checkModesAvailable(LPDDSURFACEDESC2 surf, LPVOID lpContext) -{ - if(surf->dwWidth == 320 && - surf->dwHeight == 240 && - surf->ddpfPixelFormat.dwRGBBitCount == 16) { - theApp.mode320Available = TRUE; - } - if(surf->dwWidth == 640 && - surf->dwHeight == 480 && - surf->ddpfPixelFormat.dwRGBBitCount == 16) { - theApp.mode640Available = TRUE; - } - if(surf->dwWidth == 800 && - surf->dwHeight == 600 && - surf->ddpfPixelFormat.dwRGBBitCount == 16) { - theApp.mode800Available = TRUE; - } - return DDENUMRET_OK; -} - -static int ffs(UINT mask) -{ - int m = 0; - if (mask) { - while (!(mask & (1 << m))) - m++; - - return (m); - } - - return (0); -} - -DirectDrawDisplay::DirectDrawDisplay() -{ - pDirectDraw = NULL; - ddsPrimary = NULL; - ddsOffscreen = NULL; - ddsFlip = NULL; - ddsClipper = NULL; - ddrawDLL = NULL; - width = 0; - height = 0; - failed = false; -} - -DirectDrawDisplay::~DirectDrawDisplay() -{ - cleanup(); -} - -void DirectDrawDisplay::cleanup() -{ - if(pDirectDraw != NULL) { - if(ddsClipper != NULL) { - ddsClipper->Release(); - ddsClipper = NULL; - } - - if(ddsFlip != NULL) { - ddsFlip->Release(); - ddsFlip = NULL; - } - - if(ddsOffscreen != NULL) { - ddsOffscreen->Release(); - ddsOffscreen = NULL; - } - - if(ddsPrimary != NULL) { - ddsPrimary->Release(); - ddsPrimary = NULL; - } - - pDirectDraw->Release(); - pDirectDraw = NULL; - } - - if(ddrawDLL != NULL) { - FreeLibrary(ddrawDLL); - ddrawDLL = NULL; - } - width = 0; - height = 0; -} - -bool DirectDrawDisplay::initialize() -{ - theApp.sizeX = 240; - theApp.sizeY = 160; - - switch(theApp.videoOption) { - case VIDEO_1X: - theApp.surfaceSizeX = theApp.sizeX; - theApp.surfaceSizeY = theApp.sizeY; - break; - case VIDEO_2X: - theApp.surfaceSizeX = theApp.sizeX * 2; - theApp.surfaceSizeY = theApp.sizeY * 2; - break; - case VIDEO_3X: - theApp.surfaceSizeX = theApp.sizeX * 3; - theApp.surfaceSizeY = theApp.sizeY * 3; - break; - case VIDEO_4X: - theApp.surfaceSizeX = theApp.sizeX * 4; - theApp.surfaceSizeY = theApp.sizeY * 4; - break; - case VIDEO_320x240: - case VIDEO_640x480: - case VIDEO_800x600: - case VIDEO_1024x768: - case VIDEO_1280x1024: - case VIDEO_OTHER: - { - float scaleX = ((float)theApp.fsWidth / (float)theApp.sizeX); - float scaleY = ((float)theApp.fsHeight / (float)theApp.sizeY); - float min = scaleX < scaleY ? scaleX : scaleY; - if(theApp.fsMaxScale) - min = min > theApp.fsMaxScale ? theApp.fsMaxScale : min; - theApp.surfaceSizeX = (int)(theApp.sizeX * min); - theApp.surfaceSizeY = (int)(theApp.sizeY * min); - if(theApp.fullScreenStretch) { - theApp.surfaceSizeX = theApp.fsWidth; - theApp.surfaceSizeY = theApp.fsHeight; - } - } - break; - } - - theApp.rect.left = 0; - theApp.rect.top = 0; - theApp.rect.right = theApp.sizeX; - theApp.rect.bottom = theApp.sizeY; - - theApp.dest.left = 0; - theApp.dest.top = 0; - theApp.dest.right = theApp.surfaceSizeX; - theApp.dest.bottom = theApp.surfaceSizeY; - - DWORD style = WS_POPUP | WS_VISIBLE; - DWORD styleEx = 0; - - if(theApp.videoOption <= VIDEO_4X) - style |= WS_OVERLAPPEDWINDOW; - else - styleEx = WS_EX_TOPMOST; - - if(theApp.videoOption <= VIDEO_4X) - AdjustWindowRectEx(&theApp.dest, style, TRUE, styleEx); - else - AdjustWindowRectEx(&theApp.dest, style, FALSE, styleEx); - - int winSizeX = theApp.dest.right-theApp.dest.left; - int winSizeY = theApp.dest.bottom-theApp.dest.top; - - int x = 0; - int y = 0; - - if(theApp.videoOption <= VIDEO_4X) { - x = theApp.windowPositionX; - y = theApp.windowPositionY; - } - - // Create a window - MainWnd *pWnd = new MainWnd; - theApp.m_pMainWnd = pWnd; - - pWnd->CreateEx(styleEx, - theApp.wndClass, - "VisualBoyAdvance", - style, - x,y,winSizeX,winSizeY, - NULL, - 0); - - if (!(HWND)*pWnd) { - winlog("Error creating Window %08x\n", GetLastError()); - return FALSE; - } - - - theApp.updateMenuBar(); - - theApp.adjustDestRect(); - - GUID *guid = NULL; - if(theApp.ddrawEmulationOnly) - guid = (GUID *)DDCREATE_EMULATIONONLY; - - if(theApp.pVideoDriverGUID) - guid = theApp.pVideoDriverGUID; - - ddrawDLL = LoadLibrary("DDRAW.DLL"); - HRESULT (WINAPI *DDrawCreateEx)(GUID *,LPVOID *,REFIID,IUnknown *); - if(ddrawDLL != NULL) { - DDrawCreateEx = (HRESULT (WINAPI *)(GUID *,LPVOID *,REFIID,IUnknown *)) - GetProcAddress(ddrawDLL, "DirectDrawCreateEx"); - - if(DDrawCreateEx == NULL) { - theApp.directXMessage("DirectDrawCreateEx"); - return FALSE; - } - } else { - theApp.directXMessage("DDRAW.DLL"); - return FALSE; - } - - theApp.ddrawUsingEmulationOnly = theApp.ddrawEmulationOnly; - - HRESULT hret = DDrawCreateEx(guid, - (void **)&pDirectDraw, - IID_IDirectDraw7, - NULL); - - if(hret != DD_OK) { - winlog("Error creating DirectDraw object %08x\n", hret); - if(theApp.ddrawEmulationOnly) { - // disable emulation only setting in case of failure - regSetDwordValue("ddrawEmulationOnly", 0); - } - // errorMessage(myLoadString(IDS_ERROR_DISP_DRAWCREATE), hret); - return FALSE; - } - - if(theApp.ddrawDebug) { - DDCAPS driver; - DDCAPS hel; - ZeroMemory(&driver, sizeof(driver)); - ZeroMemory(&hel, sizeof(hel)); - driver.dwSize = sizeof(driver); - hel.dwSize = sizeof(hel); - pDirectDraw->GetCaps(&driver, &hel); - int i; - DWORD *p = (DWORD *)&driver; - for(i = 0; i < (int)driver.dwSize; i+=4) - winlog("Driver CAPS %2d: %08x\n", i>>2, *p++); - p = (DWORD *)&hel; - for(i = 0; i < (int)hel.dwSize; i+=4) - winlog("HEL CAPS %2d: %08x\n", i>>2, *p++); - } - - theApp.mode320Available = false; - theApp.mode640Available = false; - theApp.mode800Available = false; - // check for available fullscreen modes - pDirectDraw->EnumDisplayModes(DDEDM_STANDARDVGAMODES, NULL, NULL, - checkModesAvailable); - - DWORD flags = DDSCL_NORMAL; - - if(theApp.videoOption >= VIDEO_320x240) - flags = DDSCL_ALLOWMODEX | - DDSCL_ALLOWREBOOT | - DDSCL_EXCLUSIVE | - DDSCL_FULLSCREEN; - - hret = pDirectDraw->SetCooperativeLevel(pWnd->m_hWnd, - flags); - - if(hret != DD_OK) { - winlog("Error SetCooperativeLevel %08x\n", hret); - // errorMessage(myLoadString(IDS_ERROR_DISP_DRAWLEVEL), hret); - return FALSE; - } - - if(theApp.videoOption > VIDEO_4X) { - hret = pDirectDraw->SetDisplayMode(theApp.fsWidth, - theApp.fsHeight, - theApp.fsColorDepth, - 60, - 0); - if(hret != DD_OK) { - winlog("Error SetDisplayMode %08x\n", hret); - // errorMessage(myLoadString(IDS_ERROR_DISP_DRAWSET), hret); - return FALSE; - } - } - - DDSURFACEDESC2 ddsd; - ZeroMemory(&ddsd,sizeof(ddsd)); - ddsd.dwSize = sizeof(ddsd); - ddsd.dwFlags = DDSD_CAPS; - ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE; - if(theApp.videoOption > VIDEO_4X) { - if(theApp.tripleBuffering) { - // setup triple buffering - ddsd.dwFlags |= DDSD_BACKBUFFERCOUNT; - ddsd.ddsCaps.dwCaps |= DDSCAPS_COMPLEX | DDSCAPS_FLIP; - ddsd.dwBackBufferCount = 2; - } - } - - hret = pDirectDraw->CreateSurface(&ddsd, &ddsPrimary, NULL); - if(hret != DD_OK) { - winlog("Error primary CreateSurface %08x\n", hret); - // errorMessage(myLoadString(IDS_ERROR_DISP_DRAWSURFACE), hret); - return FALSE; - } - - if(theApp.ddrawDebug) { - DDSCAPS2 caps; - ZeroMemory(&caps, sizeof(caps)); - ddsPrimary->GetCaps(&caps); - - winlog("Primary CAPS 1: %08x\n", caps.dwCaps); - winlog("Primary CAPS 2: %08x\n", caps.dwCaps2); - winlog("Primary CAPS 3: %08x\n", caps.dwCaps3); - winlog("Primary CAPS 4: %08x\n", caps.dwCaps4); - } - - if(theApp.videoOption > VIDEO_4X && theApp.tripleBuffering) { - DDSCAPS2 caps; - ZeroMemory(&caps, sizeof(caps)); - // this gets the third surface. The front one is the primary, - // the second is the backbuffer and the third is the flip - // surface - caps.dwCaps = DDSCAPS_BACKBUFFER; - - hret = ddsPrimary->GetAttachedSurface(&caps, &ddsFlip); - if(hret != DD_OK) { - winlog("Failed to get attached surface %08x", hret); - return FALSE; - } - - ddsFlip->AddRef(); - clear(); - } - - // create clipper in all modes to avoid paint problems - // if(videoOption <= VIDEO_4X) { - hret = pDirectDraw->CreateClipper(0, &ddsClipper, NULL); - if(hret == DD_OK) { - ddsClipper->SetHWnd(0, pWnd->m_hWnd); - if(theApp.videoOption > VIDEO_4X) { - if(theApp.tripleBuffering) - ddsFlip->SetClipper(ddsClipper); - else - ddsPrimary->SetClipper(ddsClipper); - } else - ddsPrimary->SetClipper(ddsClipper); - } - // } - - DDPIXELFORMAT px; - - px.dwSize = sizeof(px); - - hret = ddsPrimary->GetPixelFormat(&px); - - switch(px.dwRGBBitCount) { - case 15: - case 16: - systemColorDepth = 16; - break; - case 24: - systemColorDepth = 24; - theApp.filterFunction = NULL; - break; - case 32: - systemColorDepth = 32; - break; - default: - systemMessage(IDS_ERROR_DISP_COLOR, "Unsupported display setting for color depth: %d bits. \nWindows desktop must be in either 16-bit, 24-bit or 32-bit mode for this program to work in window mode.",px.dwRGBBitCount); - return FALSE; - } - theApp.updateFilter(); - theApp.updateIFB(); - - if(failed) - return false; - - pWnd->DragAcceptFiles(TRUE); - - return true; -} - -bool DirectDrawDisplay::changeRenderSize(int w, int h) -{ - if(w != width || h != height) { - if(ddsOffscreen) { - ddsOffscreen->Release(); - ddsOffscreen = NULL; - } - if(!initializeOffscreen(w, h)) { - failed = true; - return false; - } - } - return true; -} - -bool DirectDrawDisplay::initializeOffscreen(int w, int h) -{ - DDSURFACEDESC2 ddsd; - - ZeroMemory(&ddsd, sizeof(ddsd)); - ddsd.dwSize = sizeof(ddsd); - ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH; - ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN; - if(theApp.ddrawUseVideoMemory) - ddsd.ddsCaps.dwCaps |= (DDSCAPS_LOCALVIDMEM|DDSCAPS_VIDEOMEMORY); - ddsd.dwWidth = w; - ddsd.dwHeight = h; - - HRESULT hret = pDirectDraw->CreateSurface(&ddsd, &ddsOffscreen, NULL); - - if(hret != DD_OK) { - winlog("Error offscreen CreateSurface %08x\n", hret); - if(theApp.ddrawUseVideoMemory) { - regSetDwordValue("ddrawUseVideoMemory", 0); - } - // errorMessage(myLoadString(IDS_ERROR_DISP_DRAWSURFACE2), hret); - return false; - } - - if(theApp.ddrawDebug) { - DDSCAPS2 caps; - ZeroMemory(&caps, sizeof(caps)); - ddsOffscreen->GetCaps(&caps); - - winlog("Offscreen CAPS 1: %08x\n", caps.dwCaps); - winlog("Offscreen CAPS 2: %08x\n", caps.dwCaps2); - winlog("Offscreen CAPS 3: %08x\n", caps.dwCaps3); - winlog("Offscreen CAPS 4: %08x\n", caps.dwCaps4); - } - - DDPIXELFORMAT px; - - px.dwSize = sizeof(px); - - hret = ddsOffscreen->GetPixelFormat(&px); - - if(theApp.ddrawDebug) { - DWORD *pdword = (DWORD *)&px; - for(int ii = 0; ii < 8; ii++) { - winlog("Pixel format %d %08x\n", ii, pdword[ii]); - } - } - - switch(px.dwRGBBitCount) { - case 15: - case 16: - systemColorDepth = 16; - break; - case 24: - systemColorDepth = 24; - theApp.filterFunction = NULL; - break; - case 32: - systemColorDepth = 32; - break; - default: - systemMessage(IDS_ERROR_DISP_COLOR, "Unsupported display setting for color depth: %d bits. \nWindows desktop must be in either 16-bit, 24-bit or 32-bit mode for this program to work in window mode.",px.dwRGBBitCount); - return FALSE; - } - if(theApp.ddrawDebug) { - winlog("R Mask: %08x\n", px.dwRBitMask); - winlog("G Mask: %08x\n", px.dwGBitMask); - winlog("B Mask: %08x\n", px.dwBBitMask); - } - - systemRedShift = ffs(px.dwRBitMask); - systemGreenShift = ffs(px.dwGBitMask); - systemBlueShift = ffs(px.dwBBitMask); - -#ifdef MMX - if(!theApp.disableMMX) - cpu_mmx = theApp.detectMMX(); - else - cpu_mmx = 0; -#endif - - if((px.dwFlags&DDPF_RGB) != 0 && - px.dwRBitMask == 0xF800 && - px.dwGBitMask == 0x07E0 && - px.dwBBitMask == 0x001F) { - systemGreenShift++; - Init_2xSaI(565); - } else if((px.dwFlags&DDPF_RGB) != 0 && - px.dwRBitMask == 0x7C00 && - px.dwGBitMask == 0x03E0 && - px.dwBBitMask == 0x001F) { - Init_2xSaI(555); - } else if((px.dwFlags&DDPF_RGB) != 0 && - px.dwRBitMask == 0x001F && - px.dwGBitMask == 0x07E0 && - px.dwBBitMask == 0xF800) { - systemGreenShift++; - Init_2xSaI(565); - } else if((px.dwFlags&DDPF_RGB) != 0 && - px.dwRBitMask == 0x001F && - px.dwGBitMask == 0x03E0 && - px.dwBBitMask == 0x7C00) { - Init_2xSaI(555); - } else { - // 32-bit or 24-bit - if(systemColorDepth == 32 || systemColorDepth == 24) { - systemRedShift += 3; - systemGreenShift += 3; - systemBlueShift += 3; - if(systemColorDepth == 32) - Init_2xSaI(32); - } - } - - if(theApp.ddrawDebug) { - winlog("R shift: %d\n", systemRedShift); - winlog("G shift: %d\n", systemGreenShift); - winlog("B shift: %d\n", systemBlueShift); - } - - utilUpdateSystemColorMaps(); - width = w; - height = h; - return true; -} - -void DirectDrawDisplay::clear() -{ - if(theApp.videoOption <= VIDEO_4X || !theApp.tripleBuffering || ddsFlip == NULL) - return; - - DDBLTFX fx; - ZeroMemory(&fx, sizeof(fx)); - fx.dwSize = sizeof(fx); - fx.dwFillColor = 0; - ddsFlip->Blt(NULL, NULL, NULL, DDBLT_COLORFILL | DDBLT_WAIT, &fx); - ddsPrimary->Flip(NULL, 0); - ddsFlip->Blt(NULL, NULL, NULL, DDBLT_COLORFILL | DDBLT_WAIT, &fx); - ddsPrimary->Flip(NULL, 0); - ddsFlip->Blt(NULL, NULL, NULL, DDBLT_COLORFILL | DDBLT_WAIT, &fx); - ddsPrimary->Flip(NULL, 0); -} - -void DirectDrawDisplay::renderMenu() -{ - checkFullScreen(); - theApp.m_pMainWnd->DrawMenuBar(); -} - -void DirectDrawDisplay::checkFullScreen() -{ - if(theApp.tripleBuffering) - pDirectDraw->FlipToGDISurface(); -} - -void DirectDrawDisplay::render() -{ - HRESULT hret; - - if(pDirectDraw == NULL || - ddsOffscreen == NULL || - ddsPrimary == NULL) - return; - - DDSURFACEDESC2 ddsDesc; - - ZeroMemory(&ddsDesc, sizeof(ddsDesc)); - - ddsDesc.dwSize = sizeof(ddsDesc); - - hret = ddsOffscreen->Lock(NULL, - &ddsDesc, - DDLOCK_WRITEONLY| -#ifndef FINAL_VERSION - DDLOCK_NOSYSLOCK| -#endif - DDLOCK_SURFACEMEMORYPTR, - NULL); - - if(hret == DDERR_SURFACELOST) { - hret = ddsPrimary->Restore(); - if(hret == DD_OK) { - hret = ddsOffscreen->Restore(); - - if(hret == DD_OK) { - hret = ddsOffscreen->Lock(NULL, - &ddsDesc, - DDLOCK_WRITEONLY| -#ifndef FINAL_VERSION - DDLOCK_NOSYSLOCK| -#endif - DDLOCK_SURFACEMEMORYPTR, - NULL); - - } - } - } - - if(hret == DD_OK) { - if(theApp.filterFunction) { - if(systemColorDepth == 16) - (*theApp.filterFunction)(pix+theApp.filterWidth*2+4, - theApp.filterWidth*2+4, - (u8*)theApp.delta, - (u8*)ddsDesc.lpSurface, - ddsDesc.lPitch, - theApp.filterWidth, - theApp.filterHeight); - else - (*theApp.filterFunction)(pix+theApp.filterWidth*4+4, - theApp.filterWidth*4+4, - (u8*)theApp.delta, - (u8*)ddsDesc.lpSurface, - ddsDesc.lPitch, - theApp.filterWidth, - theApp.filterHeight); - - } else { - int copyX = 240; - int copyY = 160; - - if(theApp.cartridgeType == 1) { - if(gbBorderOn) { - copyX = 256; - copyY = 224; - } else { - copyX = 160; - copyY = 144; - } - } - // MMX doesn't seem to be faster to copy the data - __asm { - mov eax, copyX; - mov ebx, copyY; - - mov esi, pix; - mov edi, ddsDesc.lpSurface; - mov edx, ddsDesc.lPitch; - cmp systemColorDepth, 16; - jnz gbaOtherColor; - sub edx, eax; - sub edx, eax; - lea esi,[esi+2*eax+4]; - shr eax, 1; - gbaLoop16bit: - mov ecx, eax; - repz movsd; - inc esi; - inc esi; - inc esi; - inc esi; - add edi, edx; - dec ebx; - jnz gbaLoop16bit; - jmp gbaLoopEnd; - gbaOtherColor: - cmp systemColorDepth, 32; - jnz gbaOtherColor2; - - sub edx, eax; - sub edx, eax; - sub edx, eax; - sub edx, eax; - lea esi, [esi+4*eax+4]; - gbaLoop32bit: - mov ecx, eax; - repz movsd; - add esi, 4; - add edi, edx; - dec ebx; - jnz gbaLoop32bit; - jmp gbaLoopEnd; - gbaOtherColor2: - lea eax, [eax+2*eax]; - sub edx, eax; - gbaLoop24bit: - mov ecx, eax; - shr ecx, 2; - repz movsd; - add edi, edx; - dec ebx; - jnz gbaLoop24bit; - gbaLoopEnd: - } - } - if(theApp.showSpeed && theApp.videoOption > VIDEO_4X) { - char buffer[30]; - if(theApp.showSpeed == 1) - sprintf(buffer, "%3d%%", systemSpeed); - else - sprintf(buffer, "%3d%%(%d, %d fps)", systemSpeed, - systemFrameSkip, - theApp.showRenderedFrames); - if(theApp.showSpeedTransparent) - drawTextTransp((u8*)ddsDesc.lpSurface, - ddsDesc.lPitch, - theApp.rect.left+10, - theApp.rect.bottom-10, - buffer); - else - drawText((u8*)ddsDesc.lpSurface, - ddsDesc.lPitch, - theApp.rect.left+10, - theApp.rect.bottom-10, - buffer); - } - } else if(theApp.ddrawDebug) - winlog("Error during lock: %08x\n", hret); - - hret = ddsOffscreen->Unlock(NULL); - - if(hret == DD_OK) { - if(theApp.vsync && !(theApp.tripleBuffering && theApp.videoOption > VIDEO_4X) && !speedup) { // isn't the Flip() call synced unless a certain flag is passed to it? - hret = pDirectDraw->WaitForVerticalBlank(DDWAITVB_BLOCKBEGIN, 0); - } - ddsOffscreen->PageLock(0); - if(theApp.tripleBuffering && theApp.videoOption > VIDEO_4X) { - hret = ddsFlip->Blt(&theApp.dest, ddsOffscreen, NULL, DDBLT_WAIT, NULL); - if(hret == DD_OK) { - if(theApp.menuToggle || !theApp.active) { - pDirectDraw->FlipToGDISurface(); - ddsPrimary->SetClipper(ddsClipper); - hret = ddsPrimary->Blt(&theApp.dest, ddsFlip, NULL, DDBLT_ASYNC, NULL); - // if using emulation only, then we have to redraw the menu - // everytime. It seems like a bug in DirectDraw to me as we not - // overwritting the menu area at all. - if(theApp.ddrawUsingEmulationOnly) - theApp.m_pMainWnd->DrawMenuBar(); - } else - hret = ddsPrimary->Flip(NULL, 0); - } - } else { - hret = ddsPrimary->Blt(&theApp.dest, ddsOffscreen, NULL,DDBLT_ASYNC,NULL); - - if(hret == DDERR_SURFACELOST) { - hret = ddsPrimary->Restore(); - - if(hret == DD_OK) { - hret = ddsPrimary->Blt(&theApp.dest, ddsOffscreen, NULL, DDBLT_ASYNC, NULL); - } - } - } - ddsOffscreen->PageUnlock(0); - } else if(theApp.ddrawDebug) - winlog("Error during unlock: %08x\n", hret); - - if(theApp.screenMessage) { - if(((GetTickCount() - theApp.screenMessageTime) < 3000) && - !theApp.disableStatusMessage) { - ddsPrimary->SetClipper(ddsClipper); - HDC hdc; - ddsPrimary->GetDC(&hdc); - SetTextColor(hdc, RGB(255,0,0)); - SetBkMode(hdc,TRANSPARENT); - TextOut(hdc, theApp.dest.left+10, theApp.dest.bottom - 20, theApp.screenMessageBuffer, - strlen(theApp.screenMessageBuffer)); - ddsPrimary->ReleaseDC(hdc); - } else { - theApp.screenMessage = false; - } - } - - if(hret != DD_OK) { - if(theApp.ddrawDebug) - winlog("Error on update screen: %08x\n", hret); - } -} - -int DirectDrawDisplay::selectFullScreenMode(GUID **pGUID) -{ - return winVideoModeSelect(theApp.m_pMainWnd, pGUID); -} - -IDisplay *newDirectDrawDisplay() -{ - return new DirectDrawDisplay(); -} - diff --git a/src/win32/DirectInput.cpp.orig b/src/win32/DirectInput.cpp.orig deleted file mode 100644 index e7fbbab5..00000000 --- a/src/win32/DirectInput.cpp.orig +++ /dev/null @@ -1,1056 +0,0 @@ -// VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. -// Copyright (C) 1999-2003 Forgotten -// Copyright (C) 2004 Forgotten and the VBA development team - -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2, or(at your option) -// any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software Foundation, -// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -#include "stdafx.h" -#include "Reg.h" -#include "WinResUtil.h" - -#define DIRECTINPUT_VERSION 0x0500 -#include - -#ifdef _DEBUG -#define new DEBUG_NEW -#undef THIS_FILE -static char THIS_FILE[] = __FILE__; -#endif - -extern void directXMessage(const char *); -extern void winlog(const char *msg,...); - -#define POV_UP 1 -#define POV_DOWN 2 -#define POV_RIGHT 4 -#define POV_LEFT 8 - -class DirectInput : public Input { -private: - HINSTANCE dinputDLL; - -public: - virtual void checkDevices(); - DirectInput(); - virtual ~DirectInput(); - - virtual bool initialize(); - virtual bool readDevices(); - virtual u32 readDevice(int which); - virtual CString getKeyName(int key); - virtual void checkKeys(); - virtual void checkMotionKeys(); - virtual void activate(); - virtual void loadSettings(); - virtual void saveSettings(); -}; - -struct deviceInfo { - LPDIRECTINPUTDEVICE device; - BOOL isPolled; - int nButtons; - int nAxes; - int nPovs; - BOOL first; - struct { - DWORD offset; - LONG center; - LONG negative; - LONG positive; - } axis[8]; - int needed; - union { - UCHAR data[256]; - DIJOYSTATE state; - }; -}; - -static deviceInfo *currentDevice = NULL; -static int numDevices = 1; -static deviceInfo *pDevices = NULL; -static LPDIRECTINPUT pDirectInput = NULL; -static int joyDebug = 0; -static int axisNumber = 0; - -USHORT joypad[4][13] = { - { - DIK_LEFT, DIK_RIGHT, - DIK_UP, DIK_DOWN, - DIK_Z, DIK_X, - DIK_RETURN,DIK_BACK, - DIK_A, DIK_S, - DIK_SPACE, DIK_F12, - DIK_C - }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } -}; - -USHORT motion[4] = { - DIK_NUMPAD4, DIK_NUMPAD6, DIK_NUMPAD8, DIK_NUMPAD2 -}; - -static int winReadKey(char *name, int num) -{ - char buffer[80]; - - sprintf(buffer, "Joy%d_%s", num, name); - - return regQueryDwordValue(buffer, (DWORD)-1); -} - -void winReadKeys() -{ - int key = -1; - - for(int i = 0; i < 4; i++) { - key = winReadKey("Left", i); - if(key != -1) - joypad[i][KEY_LEFT] = key; - key = winReadKey("Right", i); - if(key != -1) - joypad[i][KEY_RIGHT] = key; - key = winReadKey("Up", i); - if(key != -1) - joypad[i][KEY_UP] = key; - key = winReadKey("Down", i); - if(key != -1) - joypad[i][KEY_DOWN] = key; - key = winReadKey("A", i); - if(key != -1) - joypad[i][KEY_BUTTON_A] = key; - key = winReadKey("B", i); - if(key != -1) - joypad[i][KEY_BUTTON_B] = key; - key = winReadKey("L", i); - if(key != -1) - joypad[i][KEY_BUTTON_L] = key; - key = winReadKey("R", i); - if(key != -1) - joypad[i][KEY_BUTTON_R] = key; - key = winReadKey("Start", i); - if(key != -1) - joypad[i][KEY_BUTTON_START] = key; - key = winReadKey("Select", i); - if(key != -1) - joypad[i][KEY_BUTTON_SELECT] = key; - key = winReadKey("Speed", i); - if(key != -1) - joypad[i][KEY_BUTTON_SPEED] = key; - key = winReadKey("Capture", i); - if(key != -1) - joypad[i][KEY_BUTTON_CAPTURE] = key; - key = winReadKey("GS", i); - if(key != -1) - joypad[i][KEY_BUTTON_GS] = key; - } - key = regQueryDwordValue("Motion_Left", (DWORD)-1); - if(key != -1) - motion[KEY_LEFT] = key; - key = regQueryDwordValue("Motion_Right", (DWORD)-1); - if(key != -1) - motion[KEY_RIGHT] = key; - key = regQueryDwordValue("Motion_Up", (DWORD)-1); - if(key != -1) - motion[KEY_UP] = key; - key = regQueryDwordValue("Motion_Down", (DWORD)-1); - if(key != -1) - motion[KEY_DOWN] = key; -} - -static void winSaveKey(char *name, int num, USHORT value) -{ - char buffer[80]; - - sprintf(buffer, "Joy%d_%s", num, name); - - regSetDwordValue(buffer, value); -} - -void winSaveKeys() -{ - for(int i = 0; i < 4; i++) { - winSaveKey("Left", i, joypad[i][KEY_LEFT]); - winSaveKey("Right", i, joypad[i][KEY_RIGHT]); - winSaveKey("Up", i, joypad[i][KEY_UP]); - winSaveKey("Speed", i, joypad[i][KEY_BUTTON_SPEED]); - winSaveKey("Capture", i, joypad[i][KEY_BUTTON_CAPTURE]); - winSaveKey("GS", i, joypad[i][KEY_BUTTON_GS]); - winSaveKey("Down", i, joypad[i][KEY_DOWN]); - winSaveKey("A", i, joypad[i][KEY_BUTTON_A]); - winSaveKey("B", i, joypad[i][KEY_BUTTON_B]); - winSaveKey("L", i, joypad[i][KEY_BUTTON_L]); - winSaveKey("R", i, joypad[i][KEY_BUTTON_R]); - winSaveKey("Start", i, joypad[i][KEY_BUTTON_START]); - winSaveKey("Select", i, joypad[i][KEY_BUTTON_SELECT]); - } - regSetDwordValue("joyVersion", 1); - - regSetDwordValue("Motion_Left", - motion[KEY_LEFT]); - regSetDwordValue("Motion_Right", - motion[KEY_RIGHT]); - regSetDwordValue("Motion_Up", - motion[KEY_UP]); - regSetDwordValue("Motion_Down", - motion[KEY_DOWN]); -} - -static BOOL CALLBACK EnumAxesCallback( const DIDEVICEOBJECTINSTANCE* pdidoi, - VOID* pContext ) -{ - DIPROPRANGE diprg; - diprg.diph.dwSize = sizeof(DIPROPRANGE); - diprg.diph.dwHeaderSize = sizeof(DIPROPHEADER); - diprg.diph.dwHow = DIPH_BYOFFSET; - diprg.diph.dwObj = pdidoi->dwOfs; // Specify the enumerated axis - - diprg.lMin = -32768; - diprg.lMax = 32767; - // try to set the range - if(FAILED(currentDevice->device->SetProperty(DIPROP_RANGE, &diprg.diph))) { - // Get the range for the axis - if( FAILED(currentDevice->device-> - GetProperty( DIPROP_RANGE, &diprg.diph ) ) ) { - return DIENUM_STOP; - } - } - - DIPROPDWORD didz; - - didz.diph.dwSize = sizeof(didz); - didz.diph.dwHeaderSize = sizeof(DIPROPHEADER); - didz.diph.dwHow = DIPH_BYOFFSET; - didz.diph.dwObj = pdidoi->dwOfs; - - didz.dwData = 5000; - - currentDevice->device->SetProperty(DIPROP_DEADZONE, &didz.diph); - - LONG center = (diprg.lMin + diprg.lMax)/2; - LONG threshold = (diprg.lMax - center)/2; - - // only 8 axis supported - if(axisNumber < 8) { - currentDevice->axis[axisNumber].center = center; - currentDevice->axis[axisNumber].negative = center - threshold; - currentDevice->axis[axisNumber].positive = center + threshold; - currentDevice->axis[axisNumber].offset = pdidoi->dwOfs; - } - axisNumber++; - return DIENUM_CONTINUE; -} - -static BOOL CALLBACK EnumPovsCallback( const DIDEVICEOBJECTINSTANCE* pdidoi, - VOID* pContext ) -{ - return DIENUM_CONTINUE; -} - -static BOOL CALLBACK DIEnumDevicesCallback(LPCDIDEVICEINSTANCE pInst, - LPVOID lpvContext) -{ - ZeroMemory(&pDevices[numDevices],sizeof(deviceInfo)); - - HRESULT hRet = pDirectInput->CreateDevice(pInst->guidInstance, - &pDevices[numDevices].device, - NULL); - - if(hRet != DI_OK) - return DIENUM_STOP; - - DIDEVCAPS caps; - caps.dwSize=sizeof(DIDEVCAPS); - - hRet = pDevices[numDevices].device->GetCapabilities(&caps); - - if(hRet == DI_OK) { - if(caps.dwFlags & DIDC_POLLEDDATAFORMAT || - caps.dwFlags & DIDC_POLLEDDEVICE) - pDevices[numDevices].isPolled = TRUE; - - pDevices[numDevices].nButtons = caps.dwButtons; - pDevices[numDevices].nAxes = caps.dwAxes; - pDevices[numDevices].nPovs = caps.dwPOVs; - - for(int i = 0; i < 6; i++) { - pDevices[numDevices].axis[i].center = 0x8000; - pDevices[numDevices].axis[i].negative = 0x4000; - pDevices[numDevices].axis[i].positive = 0xc000; - } - } else if(joyDebug) - winlog("Failed to get device capabilities %08x\n", hRet); - - if(joyDebug) { - // don't translate. debug only - winlog("******************************\n"); - winlog("Joystick %2d name : %s\n", numDevices, pInst->tszProductName); - } - - numDevices++; - - - return DIENUM_CONTINUE; -} - -BOOL CALLBACK DIEnumDevicesCallback2(LPCDIDEVICEINSTANCE pInst, - LPVOID lpvContext) -{ - numDevices++; - - return DIENUM_CONTINUE; -} - -static int getPovState(DWORD value) -{ - int state = 0; - if(LOWORD(value) != 0xFFFF) { - if(value < 9000 || value > 27000) - state |= POV_UP; - if(value > 0 && value < 18000) - state |= POV_RIGHT; - if(value > 9000 && value < 27000) - state |= POV_DOWN; - if(value > 18000) - state |= POV_LEFT; - } - return state; -} - -static void checkKeys() -{ - int dev = 0; - int i; - - for(i = 0; i < numDevices; i++) - pDevices[i].needed = 0; - - for(i = 0; i < 4; i++) { - dev = joypad[i][KEY_LEFT] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_LEFT] = DIK_LEFT; - - dev = joypad[i][KEY_RIGHT] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_RIGHT] = DIK_RIGHT; - - dev = joypad[i][KEY_UP] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_UP] = DIK_UP; - - dev = joypad[i][KEY_DOWN] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_DOWN] = DIK_DOWN; - - dev = joypad[i][KEY_BUTTON_A] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_A] = DIK_Z; - - dev = joypad[i][KEY_BUTTON_B] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_B] = DIK_X; - - dev = joypad[i][KEY_BUTTON_L] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_L] = DIK_A; - - dev = joypad[i][KEY_BUTTON_R] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_R] = DIK_S; - - dev = joypad[i][KEY_BUTTON_START] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_START] = DIK_RETURN; - - dev = joypad[i][KEY_BUTTON_SELECT] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_SELECT] = DIK_BACK; - - dev = joypad[i][KEY_BUTTON_SPEED] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_SPEED] = DIK_SPACE; - - dev = joypad[i][KEY_BUTTON_CAPTURE] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_CAPTURE] = DIK_F12; - - dev = joypad[i][KEY_BUTTON_GS] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - joypad[i][KEY_BUTTON_GS] = DIK_C; - } - - dev = motion[KEY_UP] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - motion[KEY_UP] = DIK_NUMPAD8; - - dev = motion[KEY_DOWN] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - motion[KEY_DOWN] = DIK_NUMPAD2; - - dev = motion[KEY_LEFT] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - motion[KEY_LEFT] = DIK_NUMPAD4; - - dev = motion[KEY_RIGHT] >> 8; - if(dev < numDevices && dev >= 0) - pDevices[dev].needed = 1; - else - motion[KEY_RIGHT] = DIK_NUMPAD6; -} - -#define KEYDOWN(buffer,key) (buffer[key] & 0x80) - -static bool readKeyboard() -{ - if(pDevices[0].needed) { - HRESULT hret = pDevices[0].device-> - GetDeviceState(256, - (LPVOID)pDevices[0].data); - - if(hret == DIERR_INPUTLOST || hret == DIERR_NOTACQUIRED) { - hret = pDevices[0].device->Acquire(); - if(hret != DI_OK) - return false; - hret = pDevices[0].device->GetDeviceState(256,(LPVOID)pDevices[0].data); - } - - return hret == DI_OK; - } - return true; -} - -static bool readJoystick(int joy) -{ - if(pDevices[joy].needed) { - if(pDevices[joy].isPolled) - ((LPDIRECTINPUTDEVICE2)pDevices[joy].device)->Poll(); - - HRESULT hret = pDevices[joy].device-> - GetDeviceState(sizeof(DIJOYSTATE), - (LPVOID)&pDevices[joy].state); - - if(hret == DIERR_INPUTLOST || hret == DIERR_NOTACQUIRED) { - hret = pDevices[joy].device->Acquire(); - - if(hret == DI_OK) { - - if(pDevices[joy].isPolled) - ((LPDIRECTINPUTDEVICE2)pDevices[joy].device)->Poll(); - - hret = pDevices[joy].device-> - GetDeviceState(sizeof(DIJOYSTATE), - (LPVOID)&pDevices[joy].state); - } - } - - return hret == DI_OK; - } - - return true; -} - -static void checkKeyboard() -{ - HRESULT hret = pDevices[0].device->Acquire(); - hret = pDevices[0].device-> - GetDeviceState(256, - (LPVOID)pDevices[0].data); - - if(hret == DIERR_INPUTLOST || hret == DIERR_NOTACQUIRED) { - return; - } - - if(hret == DI_OK) { - for(int i = 0; i < 256; i++) { - if(KEYDOWN(pDevices[0].data, i)) { - SendMessage(GetFocus(), JOYCONFIG_MESSAGE,0,i); - break; - } - } - } -} - -static void checkJoypads() -{ - DIDEVICEOBJECTINSTANCE di; - - ZeroMemory(&di,sizeof(DIDEVICEOBJECTINSTANCE)); - - di.dwSize = sizeof(DIDEVICEOBJECTINSTANCE); - - int i =0; - - DIJOYSTATE joystick; - - for(i = 1; i < numDevices; i++) { - HRESULT hret = pDevices[i].device->Acquire(); - - - if(pDevices[i].isPolled) - ((LPDIRECTINPUTDEVICE2)pDevices[i].device)->Poll(); - - hret = pDevices[i].device->GetDeviceState(sizeof(joystick), &joystick); - - int j; - - if(pDevices[i].first) { - memcpy(&pDevices[i].state, &joystick, sizeof(joystick)); - pDevices[i].first = FALSE; - continue; - } - - for(j = 0; j < pDevices[i].nButtons; j++) { - if(((pDevices[i].state.rgbButtons[j] ^ joystick.rgbButtons[j]) - & joystick.rgbButtons[j]) & 0x80) { - HWND focus = GetFocus(); - - SendMessage(focus, JOYCONFIG_MESSAGE, i,j+128); - } - } - - for(j = 0; j < pDevices[i].nAxes && j < 8; j++) { - LONG value = pDevices[i].axis[j].center; - LONG old = 0; - switch(pDevices[i].axis[j].offset) { - case DIJOFS_X: - value = joystick.lX; - old = pDevices[i].state.lX; - break; - case DIJOFS_Y: - value = joystick.lY; - old = pDevices[i].state.lY; - break; - case DIJOFS_Z: - value = joystick.lZ; - old = pDevices[i].state.lZ; - break; - case DIJOFS_RX: - value = joystick.lRx; - old = pDevices[i].state.lRx; - break; - case DIJOFS_RY: - value = joystick.lRy; - old = pDevices[i].state.lRy; - break; - case DIJOFS_RZ: - value = joystick.lRz; - old = pDevices[i].state.lRz; - break; - case DIJOFS_SLIDER(0): - value = joystick.rglSlider[0]; - old = pDevices[i].state.rglSlider[0]; - break; - case DIJOFS_SLIDER(1): - value = joystick.rglSlider[1]; - old = pDevices[i].state.rglSlider[1]; - break; - } - if(value != old) { - if(value < pDevices[i].axis[j].negative) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<1)); - else if (value > pDevices[i].axis[j].positive) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<1)+1); - } - } - - for(j = 0;j < 4 && j < pDevices[i].nPovs; j++) { - if(LOWORD(pDevices[i].state.rgdwPOV[j]) != LOWORD(joystick.rgdwPOV[j])) { - int state = getPovState(joystick.rgdwPOV[j]); - - if(state & POV_UP) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<2)+0x20); - else if(state & POV_DOWN) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<2)+0x21); - else if(state & POV_RIGHT) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<2)+0x22); - else if(state & POV_LEFT) - SendMessage(GetFocus(), JOYCONFIG_MESSAGE, i, (j<<2)+0x23); - } - } - - memcpy(&pDevices[i].state, &joystick, sizeof(joystick)); - } -} - -BOOL checkKey(int key) -{ - int dev = (key >> 8); - - int k = (key & 255); - - if(dev == 0) { - return KEYDOWN(pDevices[0].data,k); - } else { - if(k < 16) { - int axis = k >> 1; - LONG value = pDevices[dev].axis[axis].center; - switch(pDevices[dev].axis[axis].offset) { - case DIJOFS_X: - value = pDevices[dev].state.lX; - break; - case DIJOFS_Y: - value = pDevices[dev].state.lY; - break; - case DIJOFS_Z: - value = pDevices[dev].state.lZ; - break; - case DIJOFS_RX: - value = pDevices[dev].state.lRx; - break; - case DIJOFS_RY: - value = pDevices[dev].state.lRy; - break; - case DIJOFS_RZ: - value = pDevices[dev].state.lRz; - break; - case DIJOFS_SLIDER(0): - value = pDevices[dev].state.rglSlider[0]; - break; - case DIJOFS_SLIDER(1): - value = pDevices[dev].state.rglSlider[1]; - break; - } - - if(k & 1) - return value > pDevices[dev].axis[axis].positive; - return value < pDevices[dev].axis[axis].negative; - } else if(k < 48) { - int hat = (k >> 2) & 3; - int state = getPovState(pDevices[dev].state.rgdwPOV[hat]); - BOOL res = FALSE; - switch(k & 3) { - case 0: - res = state & POV_UP; - break; - case 1: - res = state & POV_DOWN; - break; - case 2: - res = state & POV_RIGHT; - break; - case 3: - res = state & POV_LEFT; - break; - } - return res; - } else if(k >= 128) { - return pDevices[dev].state.rgbButtons[k-128] & 0x80; - } - } - - return FALSE; -} - -DirectInput::DirectInput() -{ - dinputDLL = NULL; -} - -DirectInput::~DirectInput() -{ - saveSettings(); - if(pDirectInput != NULL) { - if(pDevices) { - for(int i = 0; i < numDevices ; i++) { - if(pDevices[i].device) { - pDevices[i].device->Unacquire(); - pDevices[i].device->Release(); - pDevices[i].device = NULL; - } - } - free(pDevices); - pDevices = NULL; - } - - pDirectInput->Release(); - pDirectInput = NULL; - } - - if(dinputDLL) { - FreeLibrary(dinputDLL); - dinputDLL = NULL; - } -} - -bool DirectInput::initialize() -{ - joyDebug = GetPrivateProfileInt("config", - "joyDebug", - 0, - "VBA.ini"); - dinputDLL = LoadLibrary("DINPUT.DLL"); - HRESULT (WINAPI *DInputCreate)(HINSTANCE,DWORD,LPDIRECTINPUT *,IUnknown *); - if(dinputDLL != NULL) { - DInputCreate = (HRESULT (WINAPI *)(HINSTANCE,DWORD,LPDIRECTINPUT *,IUnknown *)) - GetProcAddress(dinputDLL, "DirectInputCreateA"); - - if(DInputCreate == NULL) { - directXMessage("DirectInputCreateA"); - return false; - } - } else { - directXMessage("DINPUT.DLL"); - return false; - } - - HRESULT hret = DInputCreate(AfxGetInstanceHandle(), - DIRECTINPUT_VERSION, - &pDirectInput, - NULL); - if(hret != DI_OK) { - // errorMessage(myLoadString(IDS_ERROR_DISP_CREATE), hret); - return false; - } - - hret = pDirectInput->EnumDevices(DIDEVTYPE_JOYSTICK, - DIEnumDevicesCallback2, - NULL, - DIEDFL_ATTACHEDONLY); - - - - pDevices = (deviceInfo *)calloc(numDevices, sizeof(deviceInfo)); - - hret = pDirectInput->CreateDevice(GUID_SysKeyboard,&pDevices[0].device,NULL); - pDevices[0].isPolled = false; - pDevices[0].needed = true; - - if(hret != DI_OK) { - // errorMessage(myLoadString(IDS_ERROR_DISP_CREATEDEVICE), hret); - return false; - } - - - numDevices = 1; - - hret = pDirectInput->EnumDevices(DIDEVTYPE_JOYSTICK, - DIEnumDevicesCallback, - NULL, - DIEDFL_ATTACHEDONLY); - - // hret = pDevices[0].device->SetCooperativeLevel(hWindow, - // DISCL_FOREGROUND| - // DISCL_NONEXCLUSIVE); - - if(hret != DI_OK) { - // errorMessage(myLoadString(IDS_ERROR_DISP_LEVEL), hret); - return false; - } - - hret = pDevices[0].device->SetDataFormat(&c_dfDIKeyboard); - - if(hret != DI_OK) { - // errorMessage(myLoadString(IDS_ERROR_DISP_DATAFORMAT), hret); - return false; - } - - for(int i = 1; i < numDevices; i++) { - pDevices[i].device->SetDataFormat(&c_dfDIJoystick); - pDevices[i].needed = false; - currentDevice = &pDevices[i]; - axisNumber = 0; - currentDevice->device->EnumObjects(EnumAxesCallback, NULL, DIDFT_AXIS); - currentDevice->device->EnumObjects(EnumPovsCallback, NULL, DIDFT_POV); - if(joyDebug) { - // don't translate. debug only - winlog("Joystick %2d polled : %d\n", i, currentDevice->isPolled); - winlog("Joystick %2d buttons : %d\n", i, currentDevice->nButtons); - winlog("Joystick %2d povs : %d\n", i, currentDevice->nPovs); - winlog("Joystick %2d axes : %d\n", i, currentDevice->nAxes); - for(int j = 0; j < currentDevice->nAxes; j++) { - winlog("Axis %2d offset : %08lx\n", j, currentDevice->axis[j]. - offset); - winlog("Axis %2d center : %08lx\n", j, currentDevice->axis[j]. - center); - winlog("Axis %2d negative : %08lx\n", j, currentDevice->axis[j]. - negative); - winlog("Axis %2d positive : %08lx\n", j, currentDevice->axis[j]. - positive); - } - } - - currentDevice = NULL; - } - - for(i = 0; i < numDevices; i++) - pDevices[i].device->Acquire(); - - return true; -} - -bool DirectInput::readDevices() -{ - bool ok = true; - for(int i = 0; i < numDevices; i++) { - if(pDevices[i].needed) { - if(i) { - ok = readJoystick(i); - } else - ok = readKeyboard(); - } - } - return ok; -} - -u32 DirectInput::readDevice(int which) -{ - u32 res = 0; - int i = theApp.joypadDefault; - if(which >= 0 && which <= 3) - i = which; - - if(checkKey(joypad[i][KEY_BUTTON_A])) - res |= 1; - if(checkKey(joypad[i][KEY_BUTTON_B])) - res |= 2; - if(checkKey(joypad[i][KEY_BUTTON_SELECT])) - res |= 4; - if(checkKey(joypad[i][KEY_BUTTON_START])) - res |= 8; - if(checkKey(joypad[i][KEY_RIGHT])) - res |= 16; - if(checkKey(joypad[i][KEY_LEFT])) - res |= 32; - if(checkKey(joypad[i][KEY_UP])) - res |= 64; - if(checkKey(joypad[i][KEY_DOWN])) - res |= 128; - if(checkKey(joypad[i][KEY_BUTTON_R])) - res |= 256; - if(checkKey(joypad[i][KEY_BUTTON_L])) - res |= 512; - - if(checkKey(joypad[i][KEY_BUTTON_GS])) - res |= 4096; - - if(theApp.autoFire) { - res &= (~theApp.autoFire); - if(theApp.autoFireToggle) - res |= theApp.autoFire; - theApp.autoFireToggle = !theApp.autoFireToggle; - } - - // disallow L+R or U+D of being pressed at the same time - if((res & 48) == 48) - res &= ~16; - if((res & 192) == 192) - res &= ~128; - - if(theApp.movieRecording) { - if(i == theApp.joypadDefault) { - if(res != theApp.movieLastJoypad) { - fwrite(&theApp.movieFrame, 1, sizeof(theApp.movieFrame), theApp.movieFile); - fwrite(&res, 1, sizeof(res), theApp.movieFile); - theApp.movieLastJoypad = res; - } - } - } - if(theApp.moviePlaying) { - if(theApp.movieFrame == theApp.moviePlayFrame) { - theApp.movieLastJoypad = theApp.movieNextJoypad; - theApp.movieReadNext(); - } - res = theApp.movieLastJoypad; - } - // we don't record speed up or screen capture buttons - if(checkKey(joypad[i][KEY_BUTTON_SPEED]) || theApp.speedupToggle) - res |= 1024; - if(checkKey(joypad[i][KEY_BUTTON_CAPTURE])) - res |= 2048; - - return res; -} - -CString DirectInput::getKeyName(int key) -{ - int d = (key >> 8); - int k = key & 255; - - DIDEVICEOBJECTINSTANCE di; - - ZeroMemory(&di,sizeof(DIDEVICEOBJECTINSTANCE)); - - di.dwSize = sizeof(DIDEVICEOBJECTINSTANCE); - - CString winBuffer = winResLoadString(IDS_ERROR); - - if(d == 0) { - pDevices[0].device->GetObjectInfo(&di,key,DIPH_BYOFFSET); - winBuffer = di.tszName; - } else { - if(k < 16) { - if(k < 4) { - switch(k) { - case 0: - winBuffer.Format(winResLoadString(IDS_JOY_LEFT), d); - break; - case 1: - winBuffer.Format(winResLoadString(IDS_JOY_RIGHT), d); - break; - case 2: - winBuffer.Format(winResLoadString(IDS_JOY_UP), d); - break; - case 3: - winBuffer.Format(winResLoadString(IDS_JOY_DOWN), d); - break; - } - } else { - pDevices[d].device->GetObjectInfo(&di, - pDevices[d].axis[k>>1].offset, - DIPH_BYOFFSET); - if(k & 1) - winBuffer.Format("Joy %d %s +", d, di.tszName); - else - winBuffer.Format("Joy %d %s -", d, di.tszName); - } - } else if(k < 48) { - int hat = (k >> 2) & 3; - pDevices[d].device->GetObjectInfo(&di, - DIJOFS_POV(hat), - DIPH_BYOFFSET); - char *dir = "up"; - int dd = k & 3; - if(dd == 1) - dir = "down"; - else if(dd == 2) - dir = "right"; - else if(dd == 3) - dir = "left"; - winBuffer.Format("Joy %d %s %s", d, di.tszName, dir); - } else { - pDevices[d].device->GetObjectInfo(&di, - DIJOFS_BUTTON(k-128), - DIPH_BYOFFSET); - winBuffer.Format(winResLoadString(IDS_JOY_BUTTON),d,di.tszName); - } - } - - return winBuffer; -} - -void DirectInput::checkKeys() -{ - ::checkKeys(); -} - -void DirectInput::checkMotionKeys() -{ - if(checkKey(motion[KEY_LEFT])) { - theApp.sensorX += 3; - if(theApp.sensorX > 2197) - theApp.sensorX = 2197; - if(theApp.sensorX < 2047) - theApp.sensorX = 2057; - } else if(checkKey(motion[KEY_RIGHT])) { - theApp.sensorX -= 3; - if(theApp.sensorX < 1897) - theApp.sensorX = 1897; - if(theApp.sensorX > 2047) - theApp.sensorX = 2037; - } else if(theApp.sensorX > 2047) { - theApp.sensorX -= 2; - if(theApp.sensorX < 2047) - theApp.sensorX = 2047; - } else { - theApp.sensorX += 2; - if(theApp.sensorX > 2047) - theApp.sensorX = 2047; - } - - if(checkKey(motion[KEY_UP])) { - theApp.sensorY += 3; - if(theApp.sensorY > 2197) - theApp.sensorY = 2197; - if(theApp.sensorY < 2047) - theApp.sensorY = 2057; - } else if(checkKey(motion[KEY_DOWN])) { - theApp.sensorY -= 3; - if(theApp.sensorY < 1897) - theApp.sensorY = 1897; - if(theApp.sensorY > 2047) - theApp.sensorY = 2037; - } else if(theApp.sensorY > 2047) { - theApp.sensorY -= 2; - if(theApp.sensorY < 2047) - theApp.sensorY = 2047; - } else { - theApp.sensorY += 2; - if(theApp.sensorY > 2047) - theApp.sensorY = 2047; - } -} - -Input *newDirectInput() -{ - return new DirectInput; -} - - -void DirectInput::checkDevices() -{ - checkJoypads(); - checkKeyboard(); -} - -void DirectInput::activate() -{ - for(int i = 0; i < numDevices; i++) { - if(pDevices != NULL && pDevices[i].device != NULL) - pDevices[i].device->Acquire(); - } -} - -void DirectInput::loadSettings() -{ - winReadKeys(); -} - -void DirectInput::saveSettings() -{ - winSaveKeys(); -} diff --git a/src/win32/VBA-M.ico b/src/win32/VBA-M.ico new file mode 100644 index 0000000000000000000000000000000000000000..06c07c9670ce7fafd968ee1fd279476c75da6576 GIT binary patch literal 299702 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%0Ac+B7)FH)a9-e_MHdI=e7 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 DsvOIK diff --git a/src/win32/resource.h b/src/win32/resource.h index 080c7d92..2fc2b892 100644 --- a/src/win32/resource.h +++ b/src/win32/resource.h @@ -46,6 +46,7 @@ #define IDS_OUT_OF_MEMORY 41 #define IDS_WRONG_GAMESHARK_CODE 42 #define IDS_UNSUPPORTED_GAMESHARK_CODE 43 +#define IDI_MAINICON 101 #define IDD_REGISTERS 102 #define IDD_DEBUG 103 #define IDR_MENU 104 diff --git a/src/win32/resource2.h b/src/win32/resource2.h deleted file mode 100644 index 3192ab96..00000000 --- a/src/win32/resource2.h +++ /dev/null @@ -1 +0,0 @@ -#define IDI_ICON 101 diff --git a/src/win32/vba.rc2 b/src/win32/vba.rc2 deleted file mode 100644 index 18c9e265..00000000 --- a/src/win32/vba.rc2 +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef _MAC -#include "../AutoBuild.h" - -#if _MSC_VER >= 1400 -// use modern icon -IDI_ICON ICON DISCARDABLE "vbavista.ico" -#else -// use traditional icon -IDI_ICON ICON DISCARDABLE "gbadvance.ico" -#endif - - - -///////////////////////////////////////////////////////////////////////////// -// -// Version -// - -VS_VERSION_INFO VERSIONINFO - FILEVERSION FILEVER - PRODUCTVERSION PRODUCTVER - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x29L -#else - FILEFLAGS 0x28L -#endif - FILEOS 0x40004L - FILETYPE 0x1L - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "Comments", "VisualBoyAdvance comes with NO WARRANTY. Use it at your own risk.\0" - VALUE "CompanyName", "https://vbam.bountysource.com/\0" - VALUE "FileDescription", "VBA-M : VisualBoyAdvance emulator\0" - VALUE "FileVersion", STRFILEVER - VALUE "InternalName", "VisualBoyAdvance\0" - VALUE "LegalCopyright", "Copyright © 2006 VBA development team\0" - VALUE "LegalTrademarks", "\0" - VALUE "OriginalFilename", "VisualBoyAdvance.exe\0" - VALUE "PrivateBuild", "0\0" - VALUE "ProductName", "VBA-M - Modified VisualBoyAdvance\0" - VALUE "ProductVersion", STRPRODUCTVER - VALUE "SpecialBuild", "0\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END - -#endif // !_MAC diff --git a/src/win32/vbavista.ico b/src/win32/vbavista.ico deleted file mode 100644 index b9227f4ea25ed990b81db192468ae1f0c56b0696..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 501830 zcmeFa2YB4(l`gFNXV;P}$wijcNQ#uGZdvY$dx;Y#?%i>XojA5!q^K8C5=pVoaC+|r zg8`s>w@q@BY;t$A$=>^4-}hkTY;MX;dA2X~dzH zzb#v_?3!zq;qS&}?|o_6vixPsmZhY`w|%RZE&B=f-F)-q?Zjov3^YEj#sHTu?Ya1?T_OvMq&QTDBY8 zblDVP|3)mAEqgG2n6UnzYcXW84_h2ng+)al96a)^Z@v4}(+8e@=J+eG6n*evwL}`T zIwl-U{1*>0+?dM~)f<_!=l5>ivVTYFGvEBi!*}0x&uzEdf5&Y%Y)iReYjQX{XPD(W z)w*7rbAa)->kRb;68*8`XWn1?KW6^ww?@vf>+EOJrYoyz<*FVR+vQ{`3ncyv*{TEY zWxaC!=iybK*{&Q_tQ=Eb`BUafY)ao+uXyi0_vtg``GxIvceB<|>vq-nIMs)TEYS7Y^x5PFA^}t#y3m(uEDOZ*FFDbF1`*fKpkl*0!0gtvX|)(d;>$mcB1>;_h92 z58m4O?44aNe7X18T{91F&b?`i=k%HCLTRVX(WEyG1|wAxS+%67I5YdnojVRBCcT%q z<-MdW2QU(8`TVY3k#m_5X?~TYDC!GBN=v=brM8agP)VoJ5-iedE~wS#rH-s@e||x= zQqyI$O!`7|4NY?$9sdbH^!ac7Yx&aWpD$bX`~S=OZ@+agHc8J?@ZW>@kMx)RWkJWq zf1(8blSp9J$vl|C*0m?j}QA7xZsjEaLF6^vwrX-!_6@K zEbE{2@Pjs2kJZ^>vQ`x-13CHL%xo?*JD8JSRix-N+4}A75xaYe@y>C+c@H<|WdG0? z&H9T+o$RpH*{3)6sC4}XODOX~+H0?W>*257chmlzNeSCFZ`_`^X?x=4U0V{di6xxC zJ^S}P|G@pHUVgbWH*Y{^7%|(%;4z%cG#8j;eZT&$5tnz03rsNHnA_8*H&w|LmhT_A zY5TT4$w?Rw-T9Rx?;XfIbLM-mzxK*=&pz?>uf6cZ<5<4&!t=M?uqS@ZEjv;}>E~LN z>Nb_8U9N1CDTnQ@0h<$F(d+e%Gu()i>9<(BG`cpKqQlLcc>ejlDO+|YC&kB}lr0!L zg*(U1#|M7G?qm!)=7z0X^4@&2!{J=2Z=9{JZBc7lixi_yPn*@z=k*OcJ^fC1vrJK+ zU)Um%m1;DHpMDzGZz#Xwv$-$*(J|O@#lCIHS+Bp|?r{C6tNVu?9ZectOx*Pnxp{Skk~V|s_;b%eyd$N{KcD*RKRP~XyW+-eDd%5(wL&KEh5Kc> z$|8Ba#?Tl4?h*Zi%1&5yO0_v6zasIQ{y zzwx^H=rP@~W6onI{O8VB6-Ybm?nbk<-RW+Ssfrbfu*uj_U1`h9wVynl{;hA}{-=&y z`+4@Yi|IFgly$?R^rpX+CQq2Y@~LWf%zDR9WC=f%Z~n3LdK~bhv}^aLZq515cgr32 z+K}Iqe$Ia4wBzjg8kMfjWNCFVEiz??KhR!YUgh)l)z$LZxw&t?1x6El<+@+JyYBdd zy6+zFJfW|BtgHUv$+mLM%O7^B4)mU64Yx6xZ8+ewH?ISjRquZo<$OaWrNx;S%3aRd zP@u9ISk+o?B4gW<;F2voI3B2&Hh{=RJ~eGjew(PJA*9(uO?>8BfCex&Ts zGu-*ti_g3mKL2$6kvoHDZfSle@kftsoPT7)%{x+!hmU|CHOiEAg+=|mf2_QsS)s1B z*`WfR26J73v|cK&kt^yXvT)`F)1kxrw{L6PvuWYR&3|-^?c03I&h3`(ALi52OY`z8 z3njQnLy@9GZ;GpMm&09AAgRbJs4A3#DwbsBaHrF6+ObW(cD-}$2FKbBSjJbdj$!}5 zhhgo8+jj5ZPM$74pH+4trz9u0A{XBx?R2=~*Pkq}ZZ?=obMk77KYw>Gt;c^|4$U8=V{MUm6CEiUhhra=R>9)U1xqIRa1B#a?5r(z)D%0aYh7jitZ%HOVxgiY=JieaLkppj`B2Fe z>stz!{-me>heN{){n4r3o|*o>Utj!pSN^VN@E?X^e?Kt(_rp^^8=m{y;f22)p2za% zL(@O+8~v!G=SSUrIOZ48k$)H%`-i@fU-S2wM{Kg&x7XNG6 zvIkn0E&Eayg%N+`A06|X|Fz(}|GjKk=5Ji_cUCD*LCRs-TlnwSaSCz|;y+OWq69<< zh!PMb@GmHVS%(K{glQK$#|CD-!C5YV;CjmIpYR~;<%it9VK>FUlOEr+*FVbz=lI|v zA6%lug8!m7@X?={Tlho2WRCUEd3^I+aE9TKz8G_QM%-M#lkIaby;f(p$<|@8wCPMO zT2qV0h!t%1m~2t2a}Y-|T#WTiy4e|)U+@K%e8G!cV8QhVa}j^&9wxoPahG?@!HifO z0|raX!HhbXVFwd6JDSxxHsgZq;Gt8my^b9A%U}E2vk%<=#JzVve$U-c+CT!ZeX#)oGCs^N> zu<_UVhn-2Au}=Aolq4LC5crWV-+ttU7b^1$dequMtzpPy88KS>^`>#VYsTxJ;e#=T z|IHgKH(Mtdeu@vy`orTk=Y-ocY_|1i^i4&IimY7b#Hlau*@e6Z@*DUTEMI^AIYnNs zB0t|_wI2WAgA1omeem{oUwQ7iGlvf!eEaPKZ@zi>z`LgpfB&oZ-XkPNC^xb8go?UxWx9;1XnzC`j*3Bd? zk{BhOHt&Fx1Q9_>xF3wOFTY${AZfGPqaJqH%lDYAZAx{0Zoz=jI%0DU+9|HA=lwIR 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%0D;LH}z_GOelCPd-m3_z$E1!T*na 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 j|?=5hpxqd!_r^urXmrR*f0a3DuaX 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