mirror of
https://github.com/AppleWin/AppleWin.git
synced 2025-01-17 00:30:04 +00:00
Bumped to 1.28.5.0 and updated History.txt
Updates for DHGR MIX (#633): . Support new switch -rgb-card-invert-bit7 to invert bit7 for Dragon Wars. - Reverted DHGR MIX mode and AN2 off to invert bit7
This commit is contained in:
parent
2463aae545
commit
dad590b8c1
@ -8,6 +8,18 @@ https://github.com/AppleWin/AppleWin/issues/new
|
|||||||
|
|
||||||
Tom Charlesworth
|
Tom Charlesworth
|
||||||
|
|
||||||
|
|
||||||
|
1.28.5.0 - 6 Apr 2019
|
||||||
|
---------------------
|
||||||
|
. [Change #631] Improvements for the RGB AppleColor card:
|
||||||
|
- Relax the video-mode precondition to just ignore if VF_MIXED (previously required HIRES on) for Apple II Desktop.
|
||||||
|
- Changing from DHGR B&W mode to HGR remains in B&W (color burst if off).
|
||||||
|
- For '50% scan lines', don't blend in NTSC B&W mode, as this was inconsistent with the RGB colour rendering.
|
||||||
|
. [Change #633] Improvements for the RGB AppleColor card:
|
||||||
|
- Improved the video-mode precondition to ignore if 80COL ($C00C/D) occurs before DHIRESON ($C05F) for Renegade.
|
||||||
|
- Support new switch -rgb-card-invert-bit7 to invert bit7 for Dragon Wars.
|
||||||
|
|
||||||
|
|
||||||
1.28.4.0 - 16 Mar 2019
|
1.28.4.0 - 16 Mar 2019
|
||||||
----------------------
|
----------------------
|
||||||
. [Change #616] Improved accuracy for 'RGB (Color Monitor)' for hires.
|
. [Change #616] Improved accuracy for 'RGB (Color Monitor)' for hires.
|
||||||
|
@ -97,15 +97,19 @@
|
|||||||
<li>Either: Toggle between windowed and full screen video modes (default).
|
<li>Either: Toggle between windowed and full screen video modes (default).
|
||||||
<li>Or: Allow the emulated Apple II to read the Enter key state when Alt (Open Apple key) is pressed.
|
<li>Or: Allow the emulated Apple II to read the Enter key state when Alt (Open Apple key) is pressed.
|
||||||
</ul>
|
</ul>
|
||||||
|
-rgb-card-invert-bit7<br>
|
||||||
|
Force the RGB card (in "Color (RGB Monitor)" video mode) to invert bit7 in MIX mode. Enables the correct rendering for Dragon Wars.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<P style="FONT-WEIGHT: bold">Debug arguments:
|
<P style="FONT-WEIGHT: bold">Debug arguments:
|
||||||
</P>
|
</P>
|
||||||
-l or -log<br>
|
-l or -log<br>
|
||||||
Enable logging. Creates an AppleWin.log file<br><br>
|
Enable logging. Creates an AppleWin.log file.<br><br>
|
||||||
-m<br>
|
-m<br>
|
||||||
Disable DirectSound support<br><br>
|
Disable DirectSound support.<br><br>
|
||||||
-no-printscreen-dlg<br>
|
-no-printscreen-dlg<br>
|
||||||
Suppress the warning message-box if AppleWin fails to capture the PrintScreen key<br><br>
|
Suppress the warning message-box if AppleWin fails to capture the PrintScreen key.<br><br>
|
||||||
|
-screenshot-and-exit<br>
|
||||||
|
For testing. Use in combination with -load-state.<br><br>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#define APPLEWIN_VERSION 1,28,4,0
|
#define APPLEWIN_VERSION 1,28,5,0
|
||||||
|
|
||||||
#define xstr(a) str(a)
|
#define xstr(a) str(a)
|
||||||
#define str(a) #a
|
#define str(a) #a
|
||||||
|
@ -53,6 +53,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|||||||
#include "Speech.h"
|
#include "Speech.h"
|
||||||
#endif
|
#endif
|
||||||
#include "Video.h"
|
#include "Video.h"
|
||||||
|
#include "RGBMonitor.h"
|
||||||
#include "NTSC.h"
|
#include "NTSC.h"
|
||||||
|
|
||||||
#include "Configuration/About.h"
|
#include "Configuration/About.h"
|
||||||
@ -1416,6 +1417,10 @@ int APIENTRY WinMain(HINSTANCE passinstance, HINSTANCE, LPSTR lpCmdLine, int)
|
|||||||
{
|
{
|
||||||
newVideoStyleDisableMask = VS_COLOR_VERTICAL_BLEND;
|
newVideoStyleDisableMask = VS_COLOR_VERTICAL_BLEND;
|
||||||
}
|
}
|
||||||
|
else if (strcmp(lpCmdLine, "-rgb-card-invert-bit7") == 0) // GH#633
|
||||||
|
{
|
||||||
|
RGB_SetInvertBit7(true);
|
||||||
|
}
|
||||||
else if (strcmp(lpCmdLine, "-screenshot-and-exit") == 0) // GH#616: For testing - Use in combination with -load-state
|
else if (strcmp(lpCmdLine, "-screenshot-and-exit") == 0) // GH#616: For testing - Use in combination with -load-state
|
||||||
{
|
{
|
||||||
szScreenshotFilename = GetCurrArg(lpNextArg);
|
szScreenshotFilename = GetCurrArg(lpNextArg);
|
||||||
|
@ -1378,7 +1378,7 @@ void updateScreenDoubleHires80Simplified (long cycles6502 ) // wsUpdateVideoDblH
|
|||||||
uint8_t a = *MemGetAuxPtr(addr);
|
uint8_t a = *MemGetAuxPtr(addr);
|
||||||
uint8_t m = *MemGetMainPtr(addr);
|
uint8_t m = *MemGetMainPtr(addr);
|
||||||
|
|
||||||
if (RGB_IsMixMode() && !MemGetAnnunciator(2)) // AN2 inverts high bit? (GH#633)
|
if (RGB_IsMixModeInvertBit7()) // Invert high bit? (GH#633)
|
||||||
{
|
{
|
||||||
a ^= 0x80;
|
a ^= 0x80;
|
||||||
m ^= 0x80;
|
m ^= 0x80;
|
||||||
|
@ -739,6 +739,7 @@ static UINT g_rgbFlags = 0;
|
|||||||
static UINT g_rgbMode = 0;
|
static UINT g_rgbMode = 0;
|
||||||
static WORD g_rgbPrevAN3Addr = 0;
|
static WORD g_rgbPrevAN3Addr = 0;
|
||||||
static bool g_rgbSet80COL = false;
|
static bool g_rgbSet80COL = false;
|
||||||
|
static bool g_rgbInvertBit7 = false;
|
||||||
|
|
||||||
// Video7 RGB card:
|
// Video7 RGB card:
|
||||||
// . Clock in the !80COL state to define the 2 flags: F2, F1
|
// . Clock in the !80COL state to define the 2 flags: F2, F1
|
||||||
@ -801,6 +802,11 @@ bool RGB_Is560Mode(void) // Extended 80-Column Text/AppleColor Card's Mode 1
|
|||||||
return g_rgbMode == 3;
|
return g_rgbMode == 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool RGB_IsMixModeInvertBit7(void)
|
||||||
|
{
|
||||||
|
return RGB_IsMixMode() && g_rgbInvertBit7;
|
||||||
|
}
|
||||||
|
|
||||||
void RGB_ResetState(void)
|
void RGB_ResetState(void)
|
||||||
{
|
{
|
||||||
g_rgbFlags = 0;
|
g_rgbFlags = 0;
|
||||||
@ -808,6 +814,11 @@ void RGB_ResetState(void)
|
|||||||
g_rgbPrevAN3Addr = 0;
|
g_rgbPrevAN3Addr = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RGB_SetInvertBit7(bool state)
|
||||||
|
{
|
||||||
|
g_rgbInvertBit7 = state;
|
||||||
|
}
|
||||||
|
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
|
|
||||||
#define SS_YAML_KEY_RGB_CARD "AppleColor RGB Adaptor"
|
#define SS_YAML_KEY_RGB_CARD "AppleColor RGB Adaptor"
|
||||||
@ -817,6 +828,7 @@ void RGB_ResetState(void)
|
|||||||
#define SS_YAML_KEY_RGB_MODE "RGB mode"
|
#define SS_YAML_KEY_RGB_MODE "RGB mode"
|
||||||
#define SS_YAML_KEY_RGB_PREVIOUS_AN3 "Previous AN3"
|
#define SS_YAML_KEY_RGB_PREVIOUS_AN3 "Previous AN3"
|
||||||
#define SS_YAML_KEY_RGB_80COL_CHANGED "80COL changed"
|
#define SS_YAML_KEY_RGB_80COL_CHANGED "80COL changed"
|
||||||
|
#define SS_YAML_KEY_RGB_INVERT_BIT7 "Invert bit7"
|
||||||
|
|
||||||
void RGB_SaveSnapshot(YamlSaveHelper& yamlSaveHelper)
|
void RGB_SaveSnapshot(YamlSaveHelper& yamlSaveHelper)
|
||||||
{
|
{
|
||||||
@ -826,6 +838,7 @@ void RGB_SaveSnapshot(YamlSaveHelper& yamlSaveHelper)
|
|||||||
yamlSaveHelper.SaveHexUint8(SS_YAML_KEY_RGB_MODE, g_rgbMode);
|
yamlSaveHelper.SaveHexUint8(SS_YAML_KEY_RGB_MODE, g_rgbMode);
|
||||||
yamlSaveHelper.SaveHexUint8(SS_YAML_KEY_RGB_PREVIOUS_AN3, g_rgbPrevAN3Addr);
|
yamlSaveHelper.SaveHexUint8(SS_YAML_KEY_RGB_PREVIOUS_AN3, g_rgbPrevAN3Addr);
|
||||||
yamlSaveHelper.SaveBool(SS_YAML_KEY_RGB_80COL_CHANGED, g_rgbSet80COL);
|
yamlSaveHelper.SaveBool(SS_YAML_KEY_RGB_80COL_CHANGED, g_rgbSet80COL);
|
||||||
|
yamlSaveHelper.SaveBool(SS_YAML_KEY_RGB_INVERT_BIT7, g_rgbInvertBit7);
|
||||||
}
|
}
|
||||||
|
|
||||||
void RGB_LoadSnapshot(YamlLoadHelper& yamlLoadHelper, UINT cardVersion)
|
void RGB_LoadSnapshot(YamlLoadHelper& yamlLoadHelper, UINT cardVersion)
|
||||||
@ -838,7 +851,10 @@ void RGB_LoadSnapshot(YamlLoadHelper& yamlLoadHelper, UINT cardVersion)
|
|||||||
g_rgbPrevAN3Addr = yamlLoadHelper.LoadUint(SS_YAML_KEY_RGB_PREVIOUS_AN3);
|
g_rgbPrevAN3Addr = yamlLoadHelper.LoadUint(SS_YAML_KEY_RGB_PREVIOUS_AN3);
|
||||||
|
|
||||||
if (cardVersion >= 3)
|
if (cardVersion >= 3)
|
||||||
|
{
|
||||||
g_rgbSet80COL = yamlLoadHelper.LoadBool(SS_YAML_KEY_RGB_80COL_CHANGED);
|
g_rgbSet80COL = yamlLoadHelper.LoadBool(SS_YAML_KEY_RGB_80COL_CHANGED);
|
||||||
|
g_rgbInvertBit7 = yamlLoadHelper.LoadBool(SS_YAML_KEY_RGB_INVERT_BIT7);
|
||||||
|
}
|
||||||
|
|
||||||
yamlLoadHelper.PopMap();
|
yamlLoadHelper.PopMap();
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,9 @@ bool RGB_Is140Mode(void);
|
|||||||
bool RGB_Is160Mode(void);
|
bool RGB_Is160Mode(void);
|
||||||
bool RGB_IsMixMode(void);
|
bool RGB_IsMixMode(void);
|
||||||
bool RGB_Is560Mode(void);
|
bool RGB_Is560Mode(void);
|
||||||
|
bool RGB_IsMixModeInvertBit7(void);
|
||||||
void RGB_ResetState(void);
|
void RGB_ResetState(void);
|
||||||
|
void RGB_SetInvertBit7(bool state);
|
||||||
|
|
||||||
void RGB_SaveSnapshot(class YamlSaveHelper& yamlSaveHelper);
|
void RGB_SaveSnapshot(class YamlSaveHelper& yamlSaveHelper);
|
||||||
void RGB_LoadSnapshot(class YamlLoadHelper& yamlLoadHelper, UINT cardVersion);
|
void RGB_LoadSnapshot(class YamlLoadHelper& yamlLoadHelper, UINT cardVersion);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user