| Re: [hatari-devel] External disassembler and FPU instructions | 
[ Thread Index | 
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
] 
Le 18/04/2019 à 14:34, Toni Wilen a écrit :
On Mittwoch, 17. April 2019 20:15:42 CEST Eero Tamminen wrote:
lower-case opcode names
IIRC it is not only a problem of upper/lowercase. The internal disassembler
takes (most of) the opcode names from table68k. These are not the real
instruction names in all cases (MVPMR, EORSR for example).
I have been slowly improving it recently. Most weird opcode names are
already gone but some still remains (like MVPMR).
I can add lower/uppercase (and other) options if needed.
Hi
that could be interesting if such options could be added to WinUAE.
Ideally, maybe there could be a combination of flags that would issue 
some disasm code that could be directly assembled (it's sometimes handy 
to copy/paste from the debugger to an assembler to compile a suspicious 
bit of code).
In the external disassembler that was added to Hatari, we have some bits 
that can be or-ed :
typedef enum {
        doptNoBrackets = 1,     // hide brackets around absolute addressing
        doptOpcodesSmall = 2,   // opcodes are small letters
        doptRegisterSmall = 4,  // register names are small letters
        doptStackSP = 8         // stack pointer is named "SP" instead 
of "A7" (except for MOVEM)
} Diss68kOptions;
considering WinUAE disasm, some config bits could be added to show/not 
show memory content / current value (remove [], () or '==' parts) :
for example, change :
00FC0038 0cb9 fa52 235f 00fa 0000 CMP.L #$fa52235f,$00fa0000 [abcdef42]
00FC0042 660a                     BNE.B #$0a == $00fc004e (T)
00FC0044 4dfa 0008                LEA.L (PC,$0008) == $00fc004e,A6
To :
00FC0038 0cb9 fa52 235f 00fa 0000 CMP.L #$fa52235f,$00fa0000
00FC0042 660a                     BNE.B #$0a
00FC0044 4dfa 0008                LEA.L (PC,$0008),A6
Or even to (code that could be assembled directly) :
  CMP.L #$fa52235f,$00fa0000
  BNE.B #$0a
  LEA.L (PC,$0008),A6
Nicolas