You can subscribe to this list here.
2004 |
Jan
(17) |
Feb
(38) |
Mar
(24) |
Apr
(18) |
May
(75) |
Jun
(2) |
Jul
|
Aug
|
Sep
(21) |
Oct
(3) |
Nov
(19) |
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(15) |
Jul
(2) |
Aug
|
Sep
(5) |
Oct
|
Nov
|
Dec
|
2006 |
Jan
(8) |
Feb
|
Mar
|
Apr
(6) |
May
(73) |
Jun
(57) |
Jul
(12) |
Aug
(68) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
1
|
2
|
3
|
4
|
5
|
6
|
7
(2) |
8
|
9
|
10
(1) |
11
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
25
(12) |
26
|
27
|
28
|
29
|
30
|
|
|
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:26:43
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13408 Modified Files: GBA.cpp GBA.h GBAinline.h Globals.cpp Globals.h Log Message: - Cleaned the gba.cpp code a bit (too much changed to list them). - Changed all the clockticks management. Internal emulation speed should be more accurate now (fixes some games that crashed, like Advance Wars 2 or Tennis no Oojisama 2003), some other should have less slowdown/flickering (Breath of Fire 3's underwater level, Mario & Luigi Saga's intro). Added pseudo-support for bus prefetch (still need to check how it works for all the cases). - Added a 3 lines delay between the time a BG is enabled and the time it is displayed on screen (Lady Sia 2's blue lines on water level bug). - Put the supposed correct settings in DISPSTAT and lcdTicks on bootup when no bios are used (or when bios animation is skipped). (Earthworm Jim 2 now boots up). - Added a rom mirroring option in the 'Game Override' menu. Enabling it for the 'Mini'/'Classic' series makes the controls respond properly. - Bit 15 of WAITCNT is now read-only (Donkey Kong King of Swing doesn't crash on some levels anymore). - Bit 11 and 15 of SGCNT (FIFO Reset bits) are now cleared. - Corrected a bug introduced in VBA 1.8.0 which would prevent a game from accessing the 0x10000+ area of VRAM (Duke Nukem & Need for Speed 2's flickering is gone). - Added a 'pseudo-support' for GFX modes 6&7 (but no games should use them). - Soft Reset is now working properly (it was broken when the prefetch emulation was added). Index: GBA.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/GBA.cpp,v retrieving revision 1.61 retrieving revision 1.62 diff -C2 -d -r1.61 -r1.62 *** GBA.cpp 11 Jun 2005 03:17:02 -0000 1.61 --- GBA.cpp 25 Jun 2005 06:26:33 -0000 1.62 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team [...1314 lines suppressed...] + } + if(timer3On && !(TM3CNT & 4) && (timer3Ticks < clockTicks)) { + UPDATE_REG(0x10C, TM3D+totalTicks); + } + } } } *************** *** 4007,4011 **** // emuReadState CPUReadState, ! // emuWriteState CPUWriteState, // emuReadMemState --- 4212,4216 ---- // emuReadState CPUReadState, ! // emuWriteState CPUWriteState, // emuReadMemState Index: GBA.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/GBA.h,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** GBA.h 18 Dec 2004 23:09:56 -0000 1.20 --- GBA.h 25 Jun 2005 06:26:33 -0000 1.21 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 101,104 **** --- 101,105 ---- extern bool CPUWriteState(const char *); extern int CPULoadRom(const char *); + extern void doMirroring(bool); extern void CPUUpdateRegister(u32, u16); extern void CPUWriteHalfWord(u32, u16); *************** *** 107,111 **** extern void CPUReset(); extern void CPULoop(int); ! extern bool CPUCheckDMA(int,int); extern bool CPUIsGBAImage(const char *); extern bool CPUIsZipFile(const char *); --- 108,112 ---- extern void CPUReset(); extern void CPULoop(int); ! extern void CPUCheckDMA(int,int); extern bool CPUIsGBAImage(const char *); extern bool CPUIsZipFile(const char *); Index: GBAinline.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/GBAinline.h,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** GBAinline.h 18 Dec 2004 23:09:56 -0000 1.11 --- GBAinline.h 25 Jun 2005 06:26:33 -0000 1.12 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 30,34 **** extern bool cpuEEPROMSensorEnabled; extern bool cpuDmaHack; - extern bool cpuDmaHack2; extern u32 cpuDmaLast; --- 30,33 ---- *************** *** 121,125 **** #endif ! if(cpuDmaHack || cpuDmaHack2) { value = cpuDmaLast; } else { --- 120,124 ---- #endif ! if(cpuDmaHack) { value = cpuDmaLast; } else { *************** *** 235,239 **** } #endif ! if(cpuDmaHack2 || cpuDmaHack) { value = cpuDmaLast & 0xFFFF; } else { --- 234,238 ---- } #endif ! if(cpuDmaHack) { value = cpuDmaLast & 0xFFFF; } else { *************** *** 326,330 **** } #endif ! if(cpuDmaHack || cpuDmaHack2) { return cpuDmaLast & 0xFF; } else { --- 325,329 ---- } #endif ! if(cpuDmaHack) { return cpuDmaLast & 0xFF; } else { Index: Globals.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/Globals.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Globals.cpp 13 May 2004 15:06:44 -0000 1.8 --- Globals.cpp 25 Jun 2005 06:26:33 -0000 1.9 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 46,49 **** --- 46,50 ---- bool cpuEnhancedDetection = true; bool cheatsEnabled = true; + bool mirroringEnable = false; u8 *bios = NULL; Index: Globals.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/Globals.h,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Globals.h 13 May 2004 15:06:44 -0000 1.7 --- Globals.h 25 Jun 2005 06:26:33 -0000 1.8 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 58,61 **** --- 58,62 ---- extern bool cpuEnhancedDetection; extern bool cheatsEnabled; + extern bool mirroringEnable; extern u8 *bios; |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:24:08
|
Update of /cvsroot/vba/VisualBoyAdvance/src/win32 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12327 Modified Files: MainWnd.cpp Log Message: - Fixed some crash bugs on VBA Tools when no roms were loaded. - Fixed some crash in the 'open file' menus. - Fixed a crash bug on closing VBA (it wouldn't stop emulating in some cases). - Made it that clicking on the currently used screen size now resizes the screen (before it was ignored). Can be useful if you resized the window manually by mistake. - IO Viewer : Renamed BG8VHOFS to BG2VHOFS ; made that changing the bits of a register updates the value shown on the IO Viewer ; made that clicking on 'Refresh' reloads the in-ram value of the selected register ; the checkbox of the 4th bit of SOUNDCNT_H is now disabled. - Disassemble Window : clicking on 'go' now aligns the address automatically, depending on what disassemble mode has been selected (ARM or THUMB). - Added a 'pseudo-support' for GFX modes 6&7 (but no games should use them). Index: MainWnd.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/MainWnd.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** MainWnd.cpp 18 Dec 2004 23:11:08 -0000 1.15 --- MainWnd.cpp 25 Jun 2005 06:23:59 -0000 1.16 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 426,429 **** --- 426,430 ---- void MainWnd::OnClose() { + emulating = false; CWnd::OnClose(); *************** *** 496,500 **** theApp.romSize = size; ! flashSetSize(theApp.winFlashSize); rtcEnable(theApp.winRtcEnable); --- 497,501 ---- theApp.romSize = size; ! flashSetSize(theApp.winFlashSize); rtcEnable(theApp.winRtcEnable); *************** *** 536,539 **** --- 537,546 ---- if(i != (UINT)-1 && (i <= 5)) cpuSaveType = (int)i; + i = GetPrivateProfileInt(buffer, + "mirroringEnabled", + -1, + tempName); + if(i != (UINT)-1) + doMirroring (i == 0 ? false : true); theApp.emulator = GBASystem; *************** *** 968,972 **** theApp.szFile = ""; ! LPCTSTR exts[] = { "" }; CString filter = winLoadFilter(IDS_FILTER_ROM); CString title = winResLoadString(IDS_SELECT_ROM); --- 975,979 ---- theApp.szFile = ""; ! LPCTSTR exts[] = { "", "", "" }; CString filter = winLoadFilter(IDS_FILTER_ROM); CString title = winResLoadString(IDS_SELECT_ROM); |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:23:43
|
Update of /cvsroot/vba/VisualBoyAdvance/src/win32 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11978 Modified Files: Disassemble.cpp FileDlg.cpp IOViewer.cpp IOViewer.h IOViewerRegs.h MainWndFile.cpp MapView.cpp resource.h VBA.cpp vba.rc Log Message: - Fixed some crash bugs on VBA Tools when no roms were loaded. - Fixed some crash in the 'open file' menus. - Fixed a crash bug on closing VBA (it wouldn't stop emulating in some cases). - Made it that clicking on the currently used screen size now resizes the screen (before it was ignored). Can be useful if you resized the window manually by mistake. - IO Viewer : Renamed BG8VHOFS to BG2VHOFS ; made that changing the bits of a register updates the value shown on the IO Viewer ; made that clicking on 'Refresh' reloads the in-ram value of the selected register ; the checkbox of the 4th bit of SOUNDCNT_H is now disabled. - Disassemble Window : clicking on 'go' now aligns the address automatically, depending on what disassemble mode has been selected (ARM or THUMB). - Added a 'pseudo-support' for GFX modes 6&7 (but no games should use them). Index: MapView.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/MapView.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** MapView.cpp 13 May 2004 15:06:50 -0000 1.7 --- MapView.cpp 25 Jun 2005 06:23:31 -0000 1.8 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 466,469 **** --- 466,470 ---- } + void MapView::OnRefresh() { *************** *** 512,515 **** --- 513,522 ---- renderMode5(); break; + case 6: + renderMode5(); + break; + case 7: + renderMode5(); + break; } enableButtons(mode); *************** *** 760,764 **** // all text bgs (16 bits) ! if(mode == 0 ||(mode < 3 && bg < 2)) { return GetTextClickAddress(base, x, y); } --- 767,771 ---- // all text bgs (16 bits) ! if(mode == 0 ||(mode < 3 && bg < 2) || mode == 6 || mode == 7) { return GetTextClickAddress(base, x, y); } *************** *** 792,796 **** int mode = DISPCNT & 7; ! if(mode >= 3) { // bitmap modes GetDlgItem(IDC_TILE_NUM)->SetWindowText("---"); --- 799,803 ---- int mode = DISPCNT & 7; ! if(mode >= 3 && mode <=5) { // bitmap modes GetDlgItem(IDC_TILE_NUM)->SetWindowText("---"); Index: VBA.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/VBA.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** VBA.cpp 13 May 2004 15:06:55 -0000 1.11 --- VBA.cpp 25 Jun 2005 06:23:31 -0000 1.12 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 1462,1467 **** } ! if(videoOption == value && value != VIDEO_OTHER) ! return; updateWindowSize(value); --- 1462,1467 ---- } ! //if(videoOption == value && value != VIDEO_OTHER) ! // return; updateWindowSize(value); Index: IOViewerRegs.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/IOViewerRegs.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IOViewerRegs.h 13 May 2004 15:06:50 -0000 1.2 --- IOViewerRegs.h 25 Jun 2005 06:23:31 -0000 1.3 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 259,263 **** }, { ! &BG2HOFS, 0x18, "0x4000018-BG8HOFS", 0x01FF, { "", --- 259,263 ---- }, { ! &BG2HOFS, 0x18, "0x4000018-BG2HOFS", 0x01FF, { "", *************** *** 1120,1124 **** }, { ! NULL, 0x82, "0x4000082-SGCNT0_H", 0xFF1F, { "", --- 1120,1124 ---- }, { ! NULL, 0x82, "0x4000082-SGCNT0_H", 0xFF0F, { "", Index: MainWndFile.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/MainWndFile.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** MainWndFile.cpp 14 Nov 2004 18:54:40 -0000 1.9 --- MainWndFile.cpp 25 Jun 2005 06:23:31 -0000 1.10 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 169,173 **** theApp.szFile = ""; ! LPCTSTR exts[] = { "" }; CString filter = winLoadFilter(IDS_FILTER_GBROM); CString title = winResLoadString(IDS_SELECT_ROM); --- 169,173 ---- theApp.szFile = ""; ! LPCTSTR exts[] = { "", "", "", "" }; CString filter = winLoadFilter(IDS_FILTER_GBROM); CString title = winResLoadString(IDS_SELECT_ROM); *************** *** 422,426 **** { theApp.winCheckFullscreen(); ! LPCTSTR exts[] = { "" }; CString filter = theApp.cartridgeType == 1 ? winLoadFilter(IDS_FILTER_GBS) : winLoadFilter(IDS_FILTER_SPS); CString title = winResLoadString(IDS_SELECT_SNAPSHOT_FILE); --- 422,426 ---- { theApp.winCheckFullscreen(); ! LPCTSTR exts[] = { ".gbs" }; CString filter = theApp.cartridgeType == 1 ? winLoadFilter(IDS_FILTER_GBS) : winLoadFilter(IDS_FILTER_SPS); CString title = winResLoadString(IDS_SELECT_SNAPSHOT_FILE); *************** *** 566,570 **** CString capdir = regQueryStringValue("captureDir", ""); if(capdir.IsEmpty()) ! capdir = getDirFromFile(name); CString ext = "png"; --- 566,570 ---- CString capdir = regQueryStringValue("captureDir", ""); if(capdir.IsEmpty()) ! capdir = getDirFromFile(theApp.filename); CString ext = "png"; Index: vba.rc =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/vba.rc,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** vba.rc 18 Dec 2004 23:11:08 -0000 1.49 --- vba.rc 25 Jun 2005 06:23:31 -0000 1.50 *************** *** 1202,1206 **** END ! IDD_GAME_OVERRIDES DIALOG DISCARDABLE 0, 0, 271, 118 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Game overrides" --- 1202,1206 ---- END ! IDD_GAME_OVERRIDES DIALOG DISCARDABLE 0, 0, 271, 138 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Game overrides" *************** *** 1213,1219 **** COMBOBOX IDC_FLASH_SIZE,152,76,112,12,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP ! DEFPUSHBUTTON "OK",IDOK,7,97,50,14 ! PUSHBUTTON "Defaults",IDC_DEFAULTS,110,97,50,14 ! PUSHBUTTON "Cancel",IDCANCEL,213,97,50,14 LTEXT "Overrides for game:",IDC_STATIC,7,17,140,8 EDITTEXT IDC_NAME,152,15,112,14,ES_AUTOHSCROLL | WS_DISABLED --- 1213,1221 ---- COMBOBOX IDC_FLASH_SIZE,152,76,112,12,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP ! COMBOBOX IDC_MIRRORING,152,97,112,12,CBS_DROPDOWNLIST | ! WS_VSCROLL | WS_TABSTOP ! DEFPUSHBUTTON "OK",IDOK,7,117,50,14 ! PUSHBUTTON "Defaults",IDC_DEFAULTS,110,117,50,14 ! PUSHBUTTON "Cancel",IDCANCEL,213,117,50,14 LTEXT "Overrides for game:",IDC_STATIC,7,17,140,8 EDITTEXT IDC_NAME,152,15,112,14,ES_AUTOHSCROLL | WS_DISABLED *************** *** 1221,1224 **** --- 1223,1227 ---- LTEXT "Save Type:",IDC_STATIC,7,57,140,8 LTEXT "Flash Size:",IDC_STATIC,7,77,140,8 + LTEXT "Mirroring:",IDC_STATIC,7,97,140,8 END Index: FileDlg.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/FileDlg.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** FileDlg.cpp 13 May 2004 15:06:49 -0000 1.5 --- FileDlg.cpp 25 Jun 2005 06:23:31 -0000 1.6 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 19,23 **** // FileDlg.cpp: implementation of the FileDlg class. // ! ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include <commdlg.h> --- 19,23 ---- // FileDlg.cpp: implementation of the FileDlg class. // ! #include "stdafx.h" #include <commdlg.h> *************** *** 167,177 **** if(filename.GetLength() == 0) { ! filename.Format("*%s", typeName); } else { ! int index = filename.Find('.'); ! if (index == -1) { ! filename = filename + typeName; ! } else { ! filename = filename.Left(index) + typeName; } } --- 167,180 ---- if(filename.GetLength() == 0) { ! if(strlen(typeName) != 0) ! filename.Format("*%s", typeName); } else { ! if(strlen(typeName) != 0) { ! int index = filename.Find('.'); ! if (index == -1) { ! filename = filename + typeName; ! } else { ! filename = filename.Left(index) + typeName; ! } } } Index: resource.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/resource.h,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** resource.h 18 Dec 2004 23:11:08 -0000 1.38 --- resource.h 25 Jun 2005 06:23:31 -0000 1.39 *************** *** 505,508 **** --- 505,509 ---- #define IDC_BIT_14 1264 #define IDC_BIT_15 1265 + #define IDC_MIRRORING 1266 #define ID_HELP_ABOUT 40001 #define ID_FILE_EXIT 40002 Index: IOViewer.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/IOViewer.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IOViewer.h 13 May 2004 15:06:50 -0000 1.2 --- IOViewer.h 25 Jun 2005 06:23:31 -0000 1.3 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 38,41 **** --- 38,42 ---- public: void update(); + void bitChange(); bool autoUpdate; int selected; Index: Disassemble.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/Disassemble.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Disassemble.cpp 13 May 2004 15:06:49 -0000 1.3 --- Disassemble.cpp 25 Jun 2005 06:23:31 -0000 1.4 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 119,122 **** --- 119,123 ---- { mode = 1; + address&=0xfffffffC; refresh(); } *************** *** 134,137 **** --- 135,142 ---- m_address.GetWindowText(buffer); sscanf(buffer, "%x", &address); + if (mode==1) + address&=0xfffffffc; + else if (mode==2) + address&=0xfffffffe; refresh(); } *************** *** 139,142 **** --- 144,149 ---- void Disassemble::OnGopc() { + if(rom != NULL) + { if(armState) address = armNextPC - 16; *************** *** 145,152 **** --- 152,162 ---- refresh(); + } } void Disassemble::OnNext() { + if(rom != NULL) + { CPULoop(1); if(armState) { *************** *** 164,167 **** --- 174,178 ---- } refresh(); + } } *************** *** 174,177 **** --- 185,189 ---- { mode = 2; + address&=0xfffffffe; refresh(); } Index: IOViewer.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/IOViewer.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IOViewer.cpp 13 May 2004 15:06:50 -0000 1.2 --- IOViewer.cpp 25 Jun 2005 06:23:31 -0000 1.3 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 68,71 **** --- 68,87 ---- ON_CBN_SELCHANGE(IDC_ADDRESSES, OnSelchangeAddresses) ON_BN_CLICKED(IDC_APPLY, OnApply) + ON_BN_CLICKED(IDC_BIT_0, bitChange) + ON_BN_CLICKED(IDC_BIT_1, bitChange) + ON_BN_CLICKED(IDC_BIT_2, bitChange) + ON_BN_CLICKED(IDC_BIT_3, bitChange) + ON_BN_CLICKED(IDC_BIT_4, bitChange) + ON_BN_CLICKED(IDC_BIT_5, bitChange) + ON_BN_CLICKED(IDC_BIT_6, bitChange) + ON_BN_CLICKED(IDC_BIT_7, bitChange) + ON_BN_CLICKED(IDC_BIT_8, bitChange) + ON_BN_CLICKED(IDC_BIT_9, bitChange) + ON_BN_CLICKED(IDC_BIT_10, bitChange) + ON_BN_CLICKED(IDC_BIT_11, bitChange) + ON_BN_CLICKED(IDC_BIT_12, bitChange) + ON_BN_CLICKED(IDC_BIT_13, bitChange) + ON_BN_CLICKED(IDC_BIT_14, bitChange) + ON_BN_CLICKED(IDC_BIT_15, bitChange) //}}AFX_MSG_MAP END_MESSAGE_MAP() *************** *** 81,88 **** } void IOViewer::OnRefresh() { // TODO: Add your control notification handler code here ! } --- 97,123 ---- } + void IOViewer::bitChange() + { + CString buffer; + u16 data = 0; + + for(int i = 0; i < 16; i++) { + CButton *pWnd = (CButton *)GetDlgItem(IDC_BIT_0 + i); + + if(pWnd) { + if(pWnd->GetCheck()) + data |= (1 << i); + } + } + + buffer.Format("%04X", data); + m_value.SetWindowText(buffer); + } + void IOViewer::OnRefresh() { // TODO: Add your control notification handler code here ! ! update(); } *************** *** 187,190 **** --- 222,227 ---- void IOViewer::OnApply() { + if(rom != NULL) + { const IOData *sel = &ioViewRegisters[selected]; u16 res = 0; *************** *** 199,201 **** --- 236,239 ---- CPUWriteHalfWord(0x4000000+sel->offset, res); update(); + } } |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:19:13
|
Update of /cvsroot/vba/VisualBoyAdvance/src/win32 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9829 Modified Files: GameOverrides.cpp GameOverrides.h Log Message: - Added support for the new 'mirroringEnabled' option in vba-over.ini Index: GameOverrides.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/GameOverrides.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** GameOverrides.h 6 Nov 2004 14:19:56 -0000 1.1 --- GameOverrides.h 25 Jun 2005 06:19:04 -0000 1.2 *************** *** 1,2 **** --- 1,20 ---- + // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. + // Copyright (C) 1999-2003 Forgotten + // Copyright (C) 2005 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. + #if !defined(AFX_GAMEOVERRIDES_H__EEEFE37F_F477_455D_8682_705FB2DBCC0C__INCLUDED_) #define AFX_GAMEOVERRIDES_H__EEEFE37F_F477_455D_8682_705FB2DBCC0C__INCLUDED_ *************** *** 21,24 **** --- 39,43 ---- enum { IDD = IDD_GAME_OVERRIDES }; CEdit m_name; + CComboBox m_mirroring; CComboBox m_flashSize; CComboBox m_saveType; Index: GameOverrides.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/GameOverrides.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** GameOverrides.cpp 6 Nov 2004 14:19:40 -0000 1.1 --- GameOverrides.cpp 25 Jun 2005 06:19:04 -0000 1.2 *************** *** 1,2 **** --- 1,20 ---- + // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. + // Copyright (C) 1999-2003 Forgotten + // Copyright (C) 2005 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. + // GameOverrides.cpp : implementation file // *************** *** 31,34 **** --- 49,53 ---- //{{AFX_DATA_MAP(GameOverrides) DDX_Control(pDX, IDC_NAME, m_name); + DDX_Control(pDX, IDC_MIRRORING, m_mirroring); DDX_Control(pDX, IDC_FLASH_SIZE, m_flashSize); DDX_Control(pDX, IDC_SAVE_TYPE, m_saveType); *************** *** 66,70 **** int flash = m_flashSize.GetCurSel(); int save = m_saveType.GetCurSel(); ! if(rtc == 0 && flash == 0 && save == 0) WritePrivateProfileString(buffer, NULL, NULL, tempName); else { --- 85,90 ---- int flash = m_flashSize.GetCurSel(); int save = m_saveType.GetCurSel(); ! int mirroring = m_mirroring.GetCurSel(); ! if(rtc == 0 && flash == 0 && save == 0 && mirroring == 0) WritePrivateProfileString(buffer, NULL, NULL, tempName); else { *************** *** 111,114 **** --- 131,144 ---- } WritePrivateProfileString(buffer, "saveType", value, tempName); + value = NULL; + switch(mirroring) { + case 1: + value = "0"; + break; + case 2: + value = "1"; + break; + } + WritePrivateProfileString(buffer, "mirroringEnabled", value, tempName); } CDialog::OnOK(); *************** *** 120,123 **** --- 150,154 ---- m_flashSize.SetCurSel(0); m_saveType.SetCurSel(0); + m_mirroring.SetCurSel(0); } *************** *** 152,155 **** --- 183,191 ---- "None" }; + const char *mirroringValues[] = { + "Default", + "Disabled", + "Enabled" + }; int i; *************** *** 164,168 **** m_saveType.AddString(saveValues[i]); } ! GetModuleFileName(NULL, tempName, 2048); --- 200,207 ---- m_saveType.AddString(saveValues[i]); } ! for(i = 0; i < 3; i++) { ! m_mirroring.AddString(mirroringValues[i]); ! } ! GetModuleFileName(NULL, tempName, 2048); *************** *** 219,222 **** --- 258,276 ---- m_saveType.SetCurSel(0); + v = GetPrivateProfileInt(buffer, + "mirroringEnabled", + -1, + tempName); + switch(v) { + case 0: + m_mirroring.SetCurSel(1); + break; + case 1: + m_mirroring.SetCurSel(2); + break; + default: + m_mirroring.SetCurSel(0); + } + return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:18:43
|
Update of /cvsroot/vba/VisualBoyAdvance/src/win32 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9688 Modified Files: BugReport.cpp Log Message: - Added support for the new 'mirroringEnabled' option in vba-over.ini Index: BugReport.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/win32/BugReport.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BugReport.cpp 13 May 2004 15:06:49 -0000 1.3 --- BugReport.cpp 25 Jun 2005 06:18:35 -0000 1.4 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 228,231 **** --- 228,232 ---- AppendFormat(report, "Blue shift : %08x\r\n", systemBlueShift); AppendFormat(report, "Layer setting: %04X\r\n", layerSettings); + AppendFormat(report, "Mirroring : %d\r\n", mirroringEnable); AppendFormat(report, "Save type : %d (%d)\r\n", theApp.winSaveType, cpuSaveType); |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:18:01
|
Update of /cvsroot/vba/VisualBoyAdvance/src/sdl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9226 Modified Files: debugger.cpp SDL.cpp Log Message: - Fixed some crash bugs and typos in SDL commands. - Fixed a bug in which the debugger wouldn't disable the breakpoints properly (which caused the original instruction to be lost). - Added support for the new 'mirroringEnabled' option in vba-over.ini Index: SDL.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/sdl/SDL.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** SDL.cpp 15 Sep 2004 22:12:54 -0000 1.6 --- SDL.cpp 25 Jun 2005 06:17:52 -0000 1.7 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 232,235 **** --- 232,236 ---- int sdlRtcEnable = 0; int sdlAgbPrint = 0; + int sdlMirroringEnable = 0; int sdlDefaultJoypad = 0; *************** *** 1307,1310 **** --- 1308,1313 ---- if(save >= 0 && save <= 5) cpuSaveType = save; + } else if(!strcmp(token, "mirroringEnabled")) { + mirroringEnable = (atoi(value) == 0 ? false : true); } } *************** *** 2227,2230 **** --- 2230,2235 ---- sdlApplyPerImagePreferences(); + + doMirroring(mirroringEnable); cartridgeType = 0; Index: debugger.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/sdl/debugger.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** debugger.cpp 10 Jun 2005 20:14:04 -0000 1.6 --- debugger.cpp 25 Jun 2005 06:17:52 -0000 1.7 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 143,148 **** { "eb", debuggerEditByte, "Modify memory location (byte)", "<address> <hex value>" }, { "eh", debuggerEditHalfWord,"Modify memory location (half-word)","<address> <hex value>" }, ! { "er", debuggerEditRegister, "Modify register", "<register number> <hex value" }, ! { "ew", debuggerEdit, "Modify memory location (word)", "<address> <hex value" }, { "fd", debuggerFileDisassemble, "Disassemble instructions to file", "<file> [<address> [<number>]]" }, { "fda", debuggerFileDisassembleArm, "Disassemble ARM instructions to file", "<file> [<address> [<number>]]" }, --- 143,148 ---- { "eb", debuggerEditByte, "Modify memory location (byte)", "<address> <hex value>" }, { "eh", debuggerEditHalfWord,"Modify memory location (half-word)","<address> <hex value>" }, ! { "er", debuggerEditRegister, "Modify register", "<register number> <hex value>" }, ! { "ew", debuggerEdit, "Modify memory location (word)", "<address> <hex value>" }, { "fd", debuggerFileDisassemble, "Disassemble instructions to file", "<file> [<address> [<number>]]" }, { "fda", debuggerFileDisassembleArm, "Disassemble ARM instructions to file", "<file> [<address> [<number>]]" }, *************** *** 880,885 **** int n = 0; sscanf(args[1], "%d", &n); - printf("Deleting breakpoint %d (%d)\n", n, debuggerNumOfBreakpoints); if(n >= 0 && n < debuggerNumOfBreakpoints) { n++; if(n < debuggerNumOfBreakpoints) { --- 880,885 ---- int n = 0; sscanf(args[1], "%d", &n); if(n >= 0 && n < debuggerNumOfBreakpoints) { + printf("Deleting breakpoint %d (%d)\n", n, debuggerNumOfBreakpoints); n++; if(n < debuggerNumOfBreakpoints) { *************** *** 895,898 **** --- 895,900 ---- debuggerNumOfBreakpoints--; } + else + printf("No breakpoints are set\n"); } else debuggerUsage("bd"); *************** *** 1535,1540 **** { if(n == 3) { ! u32 address; ! u32 byte; sscanf(args[1], "%x", &address); sscanf(args[2], "%x", &byte); --- 1537,1542 ---- { if(n == 3) { ! u32 address = 0x10000; ! u32 byte = 0; sscanf(args[1], "%x", &address); sscanf(args[2], "%x", &byte); *************** *** 1547,1552 **** { if(n == 3) { ! u32 address; ! u32 byte; sscanf(args[1], "%x", &address); if(address & 1) { --- 1549,1554 ---- { if(n == 3) { ! u32 address = 0x10000; ! u32 HalfWord = 0; sscanf(args[1], "%x", &address); if(address & 1) { *************** *** 1554,1559 **** return; } ! sscanf(args[2], "%x", &byte); ! debuggerWriteHalfWord(address, (u16)byte); } else debuggerUsage("eh"); --- 1556,1561 ---- return; } ! sscanf(args[2], "%x", &HalfWord); ! debuggerWriteHalfWord(address, (u16)HalfWord); } else debuggerUsage("eh"); *************** *** 1563,1567 **** { if(n == 3) { ! int r; u32 val; sscanf(args[1], "%d", &r); --- 1565,1569 ---- { if(n == 3) { ! int r = 15; u32 val; sscanf(args[1], "%d", &r); *************** *** 1721,1725 **** static void debuggerWriteState(int n, char **args) { ! int num; if(n == 2) { --- 1723,1727 ---- static void debuggerWriteState(int n, char **args) { ! int num = 12; if(n == 2) { *************** *** 1728,1732 **** sdlWriteState(num-1); else ! debuggerUsage("save"); } else --- 1730,1734 ---- sdlWriteState(num-1); else ! printf("Savestate number must be in the 1-10 range"); } else *************** *** 1736,1740 **** static void debuggerReadState(int n, char **args) { ! int num; if(n == 2) { --- 1738,1742 ---- static void debuggerReadState(int n, char **args) { ! int num = 12; if(n == 2) { *************** *** 1743,1747 **** sdlReadState(num-1); else ! debuggerUsage("load"); } else --- 1745,1749 ---- sdlReadState(num-1); else ! printf("Savestate number must be in the 1-10 range"); } else *************** *** 1751,1755 **** static void debuggerDumpLoad(int n, char** args) { ! u32 address; char *file; FILE *f; --- 1753,1757 ---- static void debuggerDumpLoad(int n, char** args) { ! u32 address = 0; char *file; FILE *f; *************** *** 1786,1791 **** static void debuggerDumpSave(int n, char** args) { ! u32 address; ! u32 size; char *file; FILE *f; --- 1788,1793 ---- static void debuggerDumpSave(int n, char** args) { ! u32 address = 0; ! u32 size = 0; char *file; FILE *f; *************** *** 2192,2195 **** --- 2194,2198 ---- while(debugger) { systemSoundPause(); + debuggerDisableBreakpoints(); printf("debugger> "); commandCount = 0; |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:16:13
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8618 Modified Files: Sound.cpp Log Message: - Corrected some small typos in sound.cpp. Index: Sound.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/Sound.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Sound.cpp 18 Dec 2004 23:09:56 -0000 1.15 --- Sound.cpp 25 Jun 2005 06:16:05 -0000 1.16 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 30,34 **** extern bool stopState; - extern bool cpuDmaHack2; u8 soundWavePattern[4][32] = { --- 30,33 ---- *************** *** 389,394 **** sound2On = 1; } ! break; ! ioMem[address] = data; case NR30: data &= 0xe0; --- 388,393 ---- sound2On = 1; } ! ioMem[address] = data; ! break; case NR30: data &= 0xe0; *************** *** 543,547 **** case SGCNT0_H: data &= 0xFF0F; ! soundControl = data & 0x770F;; if(data & 0x0800) { soundDSFifoAWriteIndex = 0; --- 542,546 ---- case SGCNT0_H: data &= 0xFF0F; ! soundControl = data & 0x770F; if(data & 0x0800) { soundDSFifoAWriteIndex = 0; *************** *** 562,566 **** soundDSBEnabled = (data & 0x3000) ? true : false; soundDSBTimer = (data & 0x4000) ? 1 : 0; ! *((u16 *)&ioMem[address]) = data; break; case FIFOA_L: --- 561,565 ---- soundDSBEnabled = (data & 0x3000) ? true : false; soundDSBTimer = (data & 0x4000) ? 1 : 0; ! *((u16 *)&ioMem[address]) = soundControl; break; case FIFOA_L: *************** *** 853,857 **** if(soundDSAEnabled) { if(soundDSFifoACount <= 16) { ! cpuDmaHack2 = CPUCheckDMA(3, 2); if(soundDSFifoACount <= 16) { soundEvent(FIFOA_L, (u16)0); --- 852,856 ---- if(soundDSAEnabled) { if(soundDSFifoACount <= 16) { ! CPUCheckDMA(3, 2); if(soundDSFifoACount <= 16) { soundEvent(FIFOA_L, (u16)0); *************** *** 882,886 **** if(soundDSBEnabled) { if(soundDSFifoBCount <= 16) { ! cpuDmaHack2 = CPUCheckDMA(3, 4); if(soundDSFifoBCount <= 16) { soundEvent(FIFOB_L, (u16)0); --- 881,885 ---- if(soundDSBEnabled) { if(soundDSFifoBCount <= 16) { ! CPUCheckDMA(3, 4); if(soundDSFifoBCount <= 16) { soundEvent(FIFOB_L, (u16)0); |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:15:48
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8431 Modified Files: EEprom.cpp EEprom.h Log Message: - Now a newly created Eeprom is filled with 0xFFs (fixes Tetris Advance's highscores reading crash). Index: EEprom.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/EEprom.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** EEprom.h 13 May 2004 15:06:43 -0000 1.2 --- EEprom.h 25 Jun 2005 06:15:34 -0000 1.3 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 25,28 **** --- 25,29 ---- extern int eepromRead(u32 address); extern void eepromWrite(u32 address, u8 value); + extern void eepromInit(); extern void eepromReset(); extern u8 eepromData[0x2000]; Index: EEprom.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/EEprom.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** EEprom.cpp 13 May 2004 15:06:43 -0000 1.6 --- EEprom.cpp 25 Jun 2005 06:15:34 -0000 1.7 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 17,20 **** --- 17,21 ---- // Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + #include <memory.h> #include "GBA.h" #include "EEprom.h" *************** *** 43,46 **** --- 44,52 ---- }; + void eepromInit() + { + memset(eepromData, 255, sizeof(eepromData)); + } + void eepromReset() { |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:15:08
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8093 Modified Files: Cheats.cpp Log Message: - Added a very basic master code support for AR/GS/GSA/CB. It only works for arm/thumb branches (ie. 95%+ of the (m) codes). Useful for cheatcodes that need to be enable at a specific instruction (like Pokemon cheatcodes). Only one master code can be enabled (the last one on the list is enabled, the other are disabled). If no (m) codes are entered (or if they are all disabled), VBA executed the cheats on each LCD line (like it used to be on the other versions). But we strongly recommend that, from now on, you enter the full (m) code and ID code when they are avaible, to prevent any crash due from codes not working properly. - Now the VBA 16/32bits 'Codes...' accept any 'valid' memory area (from 0x02 to 0x0D). If you miss the ability to enable more than 3 GSA Rom Patching Codes (VBA 1.7.2), or to use CBA codes that could change the ROM area, you just have now to use 'Codes...' to reproduct these effects. And the VBA 8bits 'Codes...' can now access the 0x02-0x07 memory range. Index: Cheats.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/Cheats.cpp,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** Cheats.cpp 18 Dec 2004 23:09:56 -0000 1.25 --- Cheats.cpp 25 Jun 2005 06:14:57 -0000 1.26 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 193,196 **** --- 193,199 ---- #define GSA_16_BIT_MIF_LOWER_OR_EQ_U 110 #define GSA_16_BIT_MIF_HIGHER_OR_EQ_U 111 + #define MASTER_CODE 112 + #define CHEATS_16_BIT_WRITE 114 + #define CHEATS_32_BIT_WRITE 115 CheatsData cheatsList[100]; *************** *** 206,209 **** --- 209,213 ---- bool cheatsCBATableGenerated = false; u16 super = 0; + extern u32 mastercode; u8 cheatsCBACurrentSeed[12] = { *************** *** 316,320 **** #define CHEAT_PATCH_ROM_16BIT(a,v) \ ! WRITE16LE(((u16 *)&rom[(a) & 0x1ffffff]), v); static bool isMultilineWithData(int i) --- 320,327 ---- #define CHEAT_PATCH_ROM_16BIT(a,v) \ ! WRITE16LE(((u16 *)&rom[(a) & 0x1ffffff]), v); ! ! #define CHEAT_PATCH_ROM_32BIT(a,v) \ ! WRITE32LE(((u32 *)&rom[(a) & 0x1ffffff]), v); static bool isMultilineWithData(int i) *************** *** 435,438 **** --- 442,448 ---- case GSA_16_BIT_MIF_LOWER_OR_EQ_U: case GSA_16_BIT_MIF_HIGHER_OR_EQ_U: + case MASTER_CODE: + case CHEATS_16_BIT_WRITE: + case CHEATS_32_BIT_WRITE: return false; // the codes below have two lines of data *************** *** 559,562 **** --- 569,575 ---- case GSA_16_BIT_MIF_LOWER_OR_EQ_U: case GSA_16_BIT_MIF_HIGHER_OR_EQ_U: + case MASTER_CODE: + case CHEATS_16_BIT_WRITE: + case CHEATS_32_BIT_WRITE: return 1; case CBA_IF_KEYS_PRESSED: *************** *** 572,577 **** { bool onoff = true; ! int ticks = 1; int i; for (i = 0; i<4; i++) if (rompatch2addr [i] != 0) { --- 585,592 ---- { bool onoff = true; ! int ticks = 0; int i; + mastercode = 0; + for (i = 0; i<4; i++) if (rompatch2addr [i] != 0) { *************** *** 713,716 **** --- 728,734 ---- i++; break; + case MASTER_CODE: + mastercode = cheatsList[i].address; + break; } if (onoff) { *************** *** 1290,1293 **** --- 1308,1325 ---- } break; + case CHEATS_16_BIT_WRITE: + if ((cheatsList[i].address>>24)>=0x08) { + CHEAT_PATCH_ROM_16BIT(cheatsList[i].address, cheatsList[i].value); + } else { + CPUWriteHalfWord(cheatsList[i].address, cheatsList[i].value); + } + break; + case CHEATS_32_BIT_WRITE: + if ((cheatsList[i].address>>24)>=0x08) { + CHEAT_PATCH_ROM_32BIT(cheatsList[i].address, cheatsList[i].value); + } else { + CPUWriteMemory(cheatsList[i].address, cheatsList[i].value); + } + break; } } *************** *** 1331,1334 **** --- 1363,1372 ---- cheatsList[x].oldValue = CPUReadMemory(address); break; + case CHEATS_16_BIT_WRITE: + cheatsList[x].oldValue = CPUReadHalfWord(address); + break; + case CHEATS_32_BIT_WRITE: + cheatsList[x].oldValue = CPUReadMemory(address); + break; } cheatsNumber++; *************** *** 1352,1355 **** --- 1390,1406 ---- CPUWriteMemory(cheatsList[x].address, cheatsList[x].oldValue); break; + case CHEATS_16_BIT_WRITE: + if ((cheatsList[x].address>>24)>=0x08) { + CHEAT_PATCH_ROM_16BIT(cheatsList[x].address, cheatsList[x].oldValue); + } else { + CPUWriteHalfWord(cheatsList[x].address, cheatsList[x].oldValue); + } + break; + case CHEATS_32_BIT_WRITE: + if ((cheatsList[x].address>>24)>=0x08) { + CHEAT_PATCH_ROM_32BIT(cheatsList[x].address, cheatsList[x].oldValue); + } else { + CPUWriteMemory(cheatsList[x].address, cheatsList[x].oldValue); + } case GSA_16_BIT_ROM_PATCH: if(cheatsList[x].status & 1) { *************** *** 1360,1370 **** break; case GSA_16_BIT_ROM_PATCH2C: ! case GSA_16_BIT_ROM_PATCH2D: ! case GSA_16_BIT_ROM_PATCH2E: ! case GSA_16_BIT_ROM_PATCH2F: if(cheatsList[x].status & 1) { cheatsList[x].status &= ~1; } break; } } --- 1411,1424 ---- break; case GSA_16_BIT_ROM_PATCH2C: ! case GSA_16_BIT_ROM_PATCH2D: ! case GSA_16_BIT_ROM_PATCH2E: ! case GSA_16_BIT_ROM_PATCH2F: if(cheatsList[x].status & 1) { cheatsList[x].status &= ~1; } break; + case MASTER_CODE: + mastercode=0; + break; } } *************** *** 1388,1391 **** --- 1442,1446 ---- if(i >= 0 && i < cheatsNumber) { cheatsList[i].enabled = true; + mastercode = 0; } } *************** *** 1410,1413 **** --- 1465,1471 ---- } break; + case MASTER_CODE: + mastercode=0; + break; } cheatsList[i].enabled = false; *************** *** 1455,1460 **** switch(address >> 24) { ! case 2: ! case 3: break; default: --- 1513,1528 ---- switch(address >> 24) { ! case 0x02: ! case 0x03: ! case 0x04: ! case 0x05: ! case 0x06: ! case 0x07: ! case 0x08: ! case 0x09: ! case 0x0A: ! case 0x0B: ! case 0x0C: ! case 0x0D: break; default: *************** *** 1469,1475 **** int type = 0; if(len == 13) ! type = 1; if(len == 17) ! type = 2; cheatsAdd(code, desc, address, address, value, type, type); return true; --- 1537,1543 ---- int type = 0; if(len == 13) ! type = 114; if(len == 17) ! type = 115; cheatsAdd(code, desc, address, address, value, type, type); return true; *************** *** 1588,1591 **** --- 1656,1668 ---- int type = ((address >> 25) & 127) | ((address >> 17) & 0x80); u32 addr = (address & 0x00F00000) << 4 | (address & 0x0003FFFF); + u16 mcode = (address>>24 & 0xFF); + + if ((mcode & 0xFE) == 0xC4) + { + cheatsAdd(code, desc, address, (address & 0x1FFFFFF) | (0x08000000), + value, 257, MASTER_CODE); + mastercode = (address & 0x1FFFFFF) | (0x08000000); + } + else switch(type) { case 0x00: *************** *** 1802,1806 **** cheatsAdd(code, desc, address, addr, value, 257, GSA_32_BIT_IF_TRUE3); break; ! case 0x47: cheatsAdd(code, desc, address, addr, value, 257, GSA_ALWAYS3); break; --- 1879,1883 ---- cheatsAdd(code, desc, address, addr, value, 257, GSA_32_BIT_IF_TRUE3); break; ! case 0x47: cheatsAdd(code, desc, address, addr, value, 257, GSA_ALWAYS3); break; *************** *** 1933,1937 **** cheatsAdd(code, desc, address, address & 0x0F0FFFFF, 0, 256, GSA_32_BIT_GS_WRITE); ! break; case 15: cheatsAdd(code, desc, address, 0, value & 0xFFFF, 256, GSA_SLOWDOWN); --- 2010,2014 ---- cheatsAdd(code, desc, address, address & 0x0F0FFFFF, 0, 256, GSA_32_BIT_GS_WRITE); ! break; case 15: cheatsAdd(code, desc, address, 0, value & 0xFFFF, 256, GSA_SLOWDOWN); *************** *** 1996,2002 **** UNKNOWN_CODE); break; ! } ! break; ! default: // unsupported code cheatsAdd(code, desc, address, address, value, 256, --- 2073,2083 ---- UNKNOWN_CODE); break; ! } ! break; ! case 0x0f: ! cheatsAdd(code, desc, address, (address & 0xFFFFFFF), value, 256, MASTER_CODE); ! mastercode = (address & 0xFFFFFFF); ! break; ! default: // unsupported code cheatsAdd(code, desc, address, address, value, 256, *************** *** 2467,2470 **** --- 2548,2555 ---- } break; + case 0x01: + cheatsAdd(code, desc, address, (address & 0x1FFFFFF) | 0x08000000, value, 512, MASTER_CODE); + mastercode = (address & 0x1FFFFFF) | 0x08000000; + break; case 0x02: cheatsAdd(code, desc, address, address & 0x0FFFFFFE, value, 512, |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:14:17
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7685 Modified Files: bios.cpp Log Message: - Corrected a bug in RLUnCompVram/RLUnCompWram. Reading of the header is now correctly done when the header's address is not aligned (Mortal Kombat 2's fire animation now shows properly). - CPUSet/CPUFastset : Added emulation for bios reading from bios area (just in case some games would want to use it). Index: bios.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/bios.cpp,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** bios.cpp 7 Jun 2005 10:19:26 -0000 1.16 --- bios.cpp 25 Jun 2005 06:14:08 -0000 1.17 *************** *** 1,5 **** // 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 --- 1,5 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify *************** *** 279,283 **** // fill ? if((cnt >> 24) & 1) { ! u32 value = CPUReadMemory(source); while(count) { CPUWriteMemory(dest, value); --- 279,283 ---- // fill ? if((cnt >> 24) & 1) { ! u32 value = (source>0x0EFFFFFF ? 0x1CAD1CAD : CPUReadMemory(source)); while(count) { CPUWriteMemory(dest, value); *************** *** 288,292 **** // copy while(count) { ! CPUWriteMemory(dest, CPUReadMemory(source)); source += 4; dest += 4; --- 288,292 ---- // copy while(count) { ! CPUWriteMemory(dest, (source>0x0EFFFFFF ? 0x1CAD1CAD : CPUReadMemory(source))); source += 4; dest += 4; *************** *** 297,301 **** // 16-bit fill? if((cnt >> 24) & 1) { ! u16 value = CPUReadHalfWord(source); while(count) { CPUWriteHalfWord(dest, value); --- 297,301 ---- // 16-bit fill? if((cnt >> 24) & 1) { ! u16 value = (source>0x0EFFFFFF ? 0x1CAD : CPUReadHalfWord(source)); while(count) { CPUWriteHalfWord(dest, value); *************** *** 306,310 **** // copy while(count) { ! CPUWriteHalfWord(dest, CPUReadHalfWord(source)); source += 2; dest += 2; --- 306,310 ---- // copy while(count) { ! CPUWriteHalfWord(dest, (source>0x0EFFFFFF ? 0x1CAD : CPUReadHalfWord(source))); source += 2; dest += 2; *************** *** 342,346 **** while(count > 0) { // BIOS always transfers 32 bytes at a time ! u32 value = CPUReadMemory(source); for(int i = 0; i < 8; i++) { CPUWriteMemory(dest, value); --- 342,346 ---- while(count > 0) { // BIOS always transfers 32 bytes at a time ! u32 value = (source>0x0EFFFFFF ? 0xBAFFFFFB : CPUReadMemory(source)); for(int i = 0; i < 8; i++) { CPUWriteMemory(dest, value); *************** *** 354,358 **** // BIOS always transfers 32 bytes at a time for(int i = 0; i < 8; i++) { ! CPUWriteMemory(dest, CPUReadMemory(source)); source += 4; dest += 4; --- 354,358 ---- // BIOS always transfers 32 bytes at a time for(int i = 0; i < 8; i++) { ! CPUWriteMemory(dest, (source>0x0EFFFFFF ? 0xBAFFFFFB :CPUReadMemory(source))); source += 4; dest += 4; *************** *** 964,968 **** u32 dest = reg[1].I; ! u32 header = CPUReadMemory(source); source += 4; --- 964,968 ---- u32 dest = reg[1].I; ! u32 header = CPUReadMemory(source & 0xFFFFFFFC); source += 4; *************** *** 1033,1037 **** u32 dest = reg[1].I; ! u32 header = CPUReadMemory(source); source += 4; --- 1033,1037 ---- u32 dest = reg[1].I; ! u32 header = CPUReadMemory(source & 0xFFFFFFFC); source += 4; |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:12:35
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6825 Modified Files: thumb.h Log Message: - Changed all the clockticks management. Internal emulation speed should be more accurate now (fixes some games that crashed, like Advance Wars 2 or Tennis no Oojisama 2003), some other should have less slowdown/flickering (Breath of Fire 3's underwater level, Mario & Luigi Saga's intro). Added pseudo-support for bus prefetch (still need to check how it works for all the cases). Index: thumb.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/thumb.h,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** thumb.h 19 Nov 2004 01:08:32 -0000 1.13 --- thumb.h 25 Jun 2005 06:12:26 -0000 1.14 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team [...1565 lines suppressed...] break; *************** *** 2466,2469 **** --- 2634,2639 ---- reg[14].I = temp|1; THUMB_PREFETCH; + busPrefetchCount=0; + clockTicks += 2*codeTicksAccessSeq16(armNextPC) + codeTicksAccess16(armNextPC)+3; } break; *************** *** 2499,2501 **** CPUUndefinedException(); break; ! } --- 2669,2671 ---- CPUUndefinedException(); break; ! } \ No newline at end of file |
From: Pokemonhacker <pok...@us...> - 2005-06-25 06:12:06
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6577 Modified Files: arm-new.h Log Message: - Changed all the clockticks management. Internal emulation speed should be more accurate now (fixes some games that crashed, like Advance Wars 2 or Tennis no Oojisama 2003), some other should have less slowdown/flickering (Breath of Fire 3's underwater level, Mario & Luigi Saga's intro). Added pseudo-support for bus prefetch (still need to check how it works for all the cases). Index: arm-new.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/arm-new.h,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** arm-new.h 19 Nov 2004 01:08:32 -0000 1.14 --- arm-new.h 25 Jun 2005 06:11:56 -0000 1.15 *************** *** 2,6 **** // 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 --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team [...7854 lines suppressed...] ! CPUSoftwareInterrupt(opcode & 0x00FFFFFF); break; #ifdef GP_SUPPORT --- 8310,8325 ---- reg[15].I += 4; ARM_PREFETCH; + clockTicks += 2 + codeTicksAccess32(armNextPC) + + codeTicksAccessSeq32(armNextPC); + busPrefetchCount=0; } break; CASE_256(0xf00) // SWI <comment> ! busPrefetchCount=0; ! clockTicks += 2 + codeTicksAccess32(armNextPC) + ! codeTicksAccessSeq32(armNextPC); ! CPUSoftwareInterrupt(opcode & 0x00FFFFFF); ! break; #ifdef GP_SUPPORT |
From: Pokemonhacker <pok...@us...> - 2005-06-10 20:14:15
|
Update of /cvsroot/vba/VisualBoyAdvance/src/sdl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1003 Modified Files: debugger.cpp Log Message: - Corrected a crash bug in save/load savestates commands. Index: debugger.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/sdl/debugger.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** debugger.cpp 20 Dec 2004 15:03:13 -0000 1.5 --- debugger.cpp 10 Jun 2005 20:14:04 -0000 1.6 *************** *** 1722,1730 **** { int num; ! ! sscanf(args[1],"%d",&num); ! ! if(num > 0 && num < 11) ! sdlWriteState(num-1); else debuggerUsage("save"); --- 1722,1733 ---- { int num; ! ! if(n == 2) { ! sscanf(args[1],"%d",&num); ! if(num > 0 && num < 11) ! sdlWriteState(num-1); ! else ! debuggerUsage("save"); ! } else debuggerUsage("save"); *************** *** 1734,1742 **** { int num; ! ! sscanf(args[1],"%d",&num); ! ! if(num > 0 && num < 11) ! sdlReadState(num-1); else debuggerUsage("load"); --- 1737,1748 ---- { int num; ! ! if(n == 2) { ! sscanf(args[1],"%d",&num); ! if(num > 0 && num < 11) ! sdlReadState(num-1); ! else ! debuggerUsage("load"); ! } else debuggerUsage("load"); |
From: Pokemonhacker <pok...@us...> - 2005-06-07 10:20:56
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2074 Modified Files: GBA.cpp Log Message: - Bit 15 of WAITCNT is now read-only. Index: GBA.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/GBA.cpp,v retrieving revision 1.59 retrieving revision 1.60 diff -C2 -d -r1.59 -r1.60 *** GBA.cpp 18 Dec 2004 23:09:56 -0000 1.59 --- GBA.cpp 7 Jun 2005 10:20:44 -0000 1.60 *************** *** 2733,2737 **** } } ! UPDATE_REG(0x204, value); } break; --- 2733,2737 ---- } } ! UPDATE_REG(0x204, value & 0x7FFF); } break; |
From: Pokemonhacker <pok...@us...> - 2005-06-07 10:19:37
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1641 Modified Files: bios.cpp Log Message: - Fixed Arctan2. Index: bios.cpp =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/bios.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** bios.cpp 18 Nov 2004 01:18:36 -0000 1.15 --- bios.cpp 7 Jun 2005 10:19:26 -0000 1.16 *************** *** 101,114 **** #endif ! s16 x = reg[0].I; ! s16 y = reg[1].I; ! s16 res = 0; if (y == 0) { ! res = 0x8000 & x; } else { if (x == 0) { ! res = (0x8000 & y) + 0x4000; } else { ! if (abs(x) > abs(y)) { reg[1].I = x; reg[0].I = y << 14; --- 101,114 ---- #endif ! s32 x = reg[0].I; ! s32 y = reg[1].I; ! u32 res = 0; if (y == 0) { ! res = ((x>>16) & 0x8000); } else { if (x == 0) { ! res = ((y>>16) & 0x8000) + 0x4000; } else { ! if ((abs(x) > abs(y)) || ((abs(x) == abs(y)) && (!((x<0) && (y<0))))) { reg[1].I = x; reg[0].I = y << 14; *************** *** 118,131 **** res = 0x8000 + reg[0].I; else ! res = ((y & 0x8000) << 1 ) + reg[0].I; } else { reg[0].I = x << 14; BIOS_Div(); BIOS_ArcTan(); ! res = (0x4000 + (y & 0x8000)) - reg[0].I; } } } ! reg[0].I = ((u32)res) & 0xffff; #ifdef DEV_VERSION --- 118,131 ---- res = 0x8000 + reg[0].I; else ! res = (((y>>16) & 0x8000)<<1) + reg[0].I; } else { reg[0].I = x << 14; BIOS_Div(); BIOS_ArcTan(); ! res = (0x4000 + ((y>>16) & 0x8000)) - reg[0].I; } } } ! reg[0].I = res; #ifdef DEV_VERSION *************** *** 135,139 **** } #endif ! } void BIOS_BitUnPack() --- 135,139 ---- } #endif ! } void BIOS_BitUnPack() |