Debugger df qol (#1229)

* Remove trailing whitespace
* Debugger 2.9.1.21 Fixed: 'df' showing zero was displaying 0 instead 0.0
* Fix debug float output
* Debugger 2.9.1.22 Fixed: 'df <addr>' was incorrectly getting marked up as 'db'
* Debugger 2.9.1.23: Show floating-point values in scientific notation.
* Cleanup formatting
* Fix debug FAC output
This commit is contained in:
Michael "Code Poet" Pohoreski
2023-06-03 11:04:28 -07:00
committed by GitHub
parent e5c4e2c51b
commit 928090c756
5 changed files with 37 additions and 10 deletions
+20 -4
View File
@@ -362,7 +362,6 @@ Update_t CmdDisasmDataList (int nArgs)
// TODO: merge _CmdDisasmDataDefByteX() and _CmdDisasmDataDefWordX
// add params( iDirective, iOpcode ) to allow ASM_DEFINE_FLOAT, NOP_FAC
//===========================================================================
Update_t _CmdDisasmDataDefByteX (int nArgs)
{
@@ -382,18 +381,23 @@ Update_t _CmdDisasmDataDefByteX (int nArgs)
DisasmData_t tData;
int iArg = 2;
if (nArgs == 3 ) // 2.7.0.31 Bug fix: DB range, i.e. DB 174E:175F
if (nArgs == 3) // 2.7.0.31 Bug fix: DB range, i.e. DB 174E:175F
{
if ( g_aArgs[ 2 ].eToken == TOKEN_COLON )
if (g_aArgs[ 2 ].eToken == TOKEN_COLON)
iArg = 1;
}
WORD nAddress = _CmdDefineByteRange( nArgs, iArg, tData );
// TODO: Allow user to select which assembler to use for displaying directives!
// tData.iDirective = FIRST_M_DIRECTIVE + ASM_M_DEFINE_BYTE;
tData.iDirective = g_aAssemblerFirstDirective[ g_iAssemblerSyntax ] + ASM_DEFINE_BYTE;
// 2.9.1.22 Fixed: `df FAC` was incorrectly getting marked up as `db`
if (g_aArgs[0].nValue == NOP_FAC)
{
tData.iDirective = g_aAssemblerFirstDirective[ g_iAssemblerSyntax ] + ASM_DEFINE_FLOAT;
}
tData.eElementType = (Nopcode_e)( NOP_BYTE_1 + iCmd );
tData.bSymbolLookup = false;
tData.nTargetAddress = 0;
@@ -552,6 +556,18 @@ Update_t CmdDisasmDataDefByte8 ( int nArgs )
// Command: DF
// Usage:
// DF <addr>
// Applesoft has several floating-point constants in ROM.
// i.e.
// 300:A0 E9 LDY #>$E932
// 302:A9 32 LDA #<$E932
// 304:20 F9 EA JSR LOAD.FAC.FROM.YA
// 307:4C 2E ED JMP PRINT.FAC
//
// Addr Symbol FAC Value
// E913 CON.ONE 8100000000 1.0
// E92D CON.SQR.HALF 803504F334 .707106781
// E932 CON.SQR.TWO 813504F334 1.41421356
// etc.
Update_t CmdDisasmDataDefFloat(int nArgs)
{
g_aArgs[0].nValue = NOP_FAC;