Re: [hatari-devel] External disassembler and FPU instructions

[ Thread Index | Date Index | More Archives ]


On 4/17/19 11:25 AM, Thomas Huth wrote:
On 17/04/2019 01.03, Eero Tamminen wrote:
It seems that internal disassembler misses some fmovem variant:

s/internal/external/ ?


d $00002a16
$002a16: 670c            beq.s     $2a24
$002a18: f229            DC.W      $f229
$002a1a: d0ff            DC.W      $d0ff
$002a1c: 03bc            DC.W      $03bc
$002a1e: f229 9c00 041c  fmovem    $41c(a1),fpiar/fpsr/fpcr
$002a24: f369 0428       frestore  $428(a1)

One more reason to finally get rid of the external disassembler again :-)

Honestly, that code is IMHO causing more work for us than benefit. In my
eyes, the code is very ugly, with huuuuge functions and many nested
indentation levels. I don't think that we should spent much more time on
fixing this. Better focus on the internal disassembler instead.

Yes, the ext disassembler C-code is really ugly, but:

* IMHO its m68k disassembly output looks nicer (not ALL CAPS)
  than (Win)UAE one

* it has options for the output looks:
$ hatari --disasm help
Flag values:
	1: no brackets around absolute addressing
	2: opcodes in small letters
	4: register names in small letters
	8: stack pointer as 'SP', not 'A7'
Current settings are:
	--disasm ext --disasm 0xf

* more importantly for profiler, its output is column based
  and one can disable & replace some of those columns if they
  e.g. would make output width unpredictable / too long.

Are these kind of changes something that would be acceptable
to WinUAE:
- lower-case opcode names
- ability to optionally skip instruction hex code and "== values"
  parts to reduce how much screen space it takes, and make line
  widths more predictable
- ability to show provided comment with disassembly
  (= profile information)

(This leaves the question of what to do with OldAUE disassembler.)

	- Eero

Mail converted by MHonArc 2.6.19+