This commit is contained in:
Toni Wilen 2015-07-13 19:24:59 +03:00
parent 357d60a0e2
commit c24f7387f9
4 changed files with 52 additions and 11 deletions

View File

@ -1136,6 +1136,9 @@ WRITE16_MEMBER( tms340x0_device::io_register_w )
oldreg = IOREG(offset);
IOREG(offset) = data;
// if (offset != 15 && offset != 16)
// write_log("WRITE %08x %04 (%04x)\n", offset, data, oldreg);
switch (offset)
{
case REG_CONTROL:
@ -1473,6 +1476,8 @@ READ16_MEMBER( tms340x0_device::io_register_r )
// if (LOG_CONTROL_REGS)
// logerror("%s: read %s\n", machine().describe_context(), ioreg_name[offset]);
// write_log("READ %08x %04x\n", offset, IOREG(offset));
switch (offset)
{
case REG_HCOUNT:

View File

@ -20,12 +20,12 @@
#define LANG_DLL_FULL_VERSION_MATCH 1
#if WINUAEPUBLICBETA
#define WINUAEBETA _T("2")
#define WINUAEBETA _T("3")
#else
#define WINUAEBETA _T("")
#endif
#define WINUAEDATE MAKEBD(2015, 7, 7)
#define WINUAEDATE MAKEBD(2015, 7, 13)
//#define WINUAEEXTRA _T("AmiKit Preview")
//#define WINUAEEXTRA _T("Amiga Forever Edition")
@ -112,7 +112,7 @@ void setpathmode (pathtype pt);
extern void sleep_millis (int ms);
extern void sleep_millis_main (int ms);
extern void sleep_millis_busy (int ms);
extern void sleep_millis_amiga (int ms);
extern void wait_keyrelease (void);
extern void keyboard_settrans (void);

View File

@ -7696,8 +7696,8 @@ static void enable_for_memorydlg (HWND hDlg)
extern uae_u32 natmem_size;
static void setmax32bitram (HWND hDlg)
{
TCHAR tmp[100];
uae_u32 size, rtgz3size, z3size;
TCHAR tmp[256];
uae_u32 size, rtgz3size, z3size_uae = 0, z3size_real = 0;
uae_u32 sizealign = 16 * 1024 * 1024 - 1;
rtgz3size = gfxboard_get_configtype(workprefs.rtgmem_type) == 3 ? workprefs.rtgmem_size : 0;
@ -7708,12 +7708,12 @@ static void setmax32bitram (HWND hDlg)
if (changed_prefs.mbresmem_high_size >= 128 * 1024 * 1024 && (size || workprefs.z3chipmem_size))
size += (changed_prefs.mbresmem_high_size - 128 * 1024 * 1024) + 16 * 1024 * 1024;
if (natmem_size > 0x40000000)
z3size = natmem_size - 0x40000000;
else
z3size = 0;
z3size_real = natmem_size - 0x40000000;
if (natmem_size > 0x10000000)
z3size_uae = natmem_size - 0x10000000;
size += ((workprefs.z3chipmem_size + sizealign) & ~sizealign);
_stprintf (tmp, L"Configured 32-bit RAM: %dM, reserved: %dM, true Z3 address space available: %dM",
size / (1024 * 1024), (natmem_size - 256 * 1024 * 1024) / (1024 * 1024), z3size / (1024 * 1024));
_stprintf (tmp, L"Configured 32-bit RAM: %dM, reserved: %dM, Z3 available: %dM (UAE), %dM (Real)",
size / (1024 * 1024), (natmem_size - 256 * 1024 * 1024) / (1024 * 1024), z3size_uae / (1024 * 1024), z3size_real / (1024 * 1024));
SetDlgItemText (hDlg, IDC_MAX32RAM, tmp);
}
@ -8199,7 +8199,7 @@ static void init_expansion2(HWND hDlg)
}
static const int expansion_settings_id[] = { IDC_EXPANSION_SETTING1, IDC_EXPANSION_SETTING2, -IDC_EXPANSION_SETTING3, 1 };
static const int expansion_settings_id[] = { IDC_EXPANSION_SETTING1, IDC_EXPANSION_SETTING2, IDC_EXPANSION_SETTING3, 1 };
static void values_to_expansion2dlg_sub(HWND hDlg)
{
@ -8382,6 +8382,7 @@ static void values_to_expansion2_expansion_settings(HWND hDlg)
while (expansion_settings_id[i] >= 0) {
int id = expansion_settings_id[i];
SetWindowText(GetDlgItem(hDlg, id), _T("-"));
hide(hDlg, id, true);
i++;
}
}
@ -8822,6 +8823,13 @@ static void values_to_expansiondlg(HWND hDlg)
if (workprefs.rtgmem_type >= GFXBOARD_HARDWARE && v < gfxboard_get_vram_min(workprefs.rtgmem_type))
v = gfxboard_get_vram_min(workprefs.rtgmem_type);
workprefs.rtgmem_size = v;
} else {
int v = workprefs.rtgmem_size;
if (workprefs.rtgmem_type >= GFXBOARD_HARDWARE && v > gfxboard_get_vram_max(workprefs.rtgmem_type))
v = gfxboard_get_vram_max(workprefs.rtgmem_type);
if (workprefs.rtgmem_type >= GFXBOARD_HARDWARE && v < gfxboard_get_vram_min(workprefs.rtgmem_type))
v = gfxboard_get_vram_min(workprefs.rtgmem_type);
workprefs.rtgmem_size = v;
}
if (workprefs.rtgmem_type >= GFXBOARD_HARDWARE) {
switch (gfxboard_get_vram_min(workprefs.rtgmem_type)) {

View File

@ -1,4 +1,29 @@
Beta 3:
- CD and sound card audio are now always resampled with Anti interpolator before it gets mixed
with Paula audio stream. Previously it used very crude resampling method.
- ES1370 (SB128) emulation fixed, DMA length register was not reset when playback was restarted.
(I don't understand how it would have ever worked in QEMU without sound glitches)
- Added "Full PCI DMA" option to PCI bridges that in real world don't have Amiga to/from PCI DMA
support (Prometheus and Mediators). Default is off = emulates real hardware limits.
- Validate PCI DMA addresses, log message and return random data if trying to access unsupported address
or if attempting to access Amiga address space and bridge does not have full PCI DMA support.
(Probably becomes HALT-something if real hardware simply hangs in this situation)
- 68040 MMU mode hardware bus error not caused by MMU had incorrectly status register ATC bit set.
- More reliable A2410 resolution switching.
- A2410 framebuffer space is also mirrored at the beginning of TMS34010 address space.
- Implemented A2410 TMS34010 to/from Amiga address space DMA feature. So far no programs found that
uses it.
- Emulate 68020/030 prefetch pipeline more accurately, branch instructions stop prefetching after
last opword of branch instruction has been loaded. It reduces unnecessary memory accesses.
This probably also makes 68020/030 cycle exact mode even more faster without adjusting
other parts of emulation (which needed to be made faster because some other unknown part
was too slow, hopefully it was this prefetch feature..)
Not fully implemented yet, addressing modes that use brief or full extension words disable
this feature until next branch instruction because length of instruction needs to be known in
advance and in these addressing modes it can't be calculated statically.
Beta 2:
- Borderblanking works again (b1)
@ -13,6 +38,9 @@ Beta 2:
- Added ES1370 from QEMU. (PCI sound card), common ES1370 based card is SB128.
- Added FM801 emulation. (PCI sound card).
- Added Vortex System 2000 HD controller.
- 68020/030 prefetch/cycle-exact: don't prefetch from old PC if instruction is going to branch.
- Accelerator board memory size reset when viewing RAM GUI panel if accelerator used "Blizzard" RAM type.
- HD and RTG boards are now named <name> (<manufacturer>).
- A2410 display card emulation! TMS34010 emulation core from MAME.
A2410 notes: