1980s/1990s 68k C cross (and not so cross) compilers

Philip Pemberton classiccmp at philpem.me.uk
Sat Nov 21 04:54:07 CST 2015


Hi there,

I'm working on reverse engineering a radio navigation receiver
(surprisingly not GPS, something else... Datatrak if anyone's heard of
it) for the purpose of either repurposing the hardware or building up
some kind of demo rig.

A lot of my effort at the moment seems to be identifying C Library
functions and naming them. Ideally, I'd like to identify the compiler
and CLib and feed that into the disassembler to eliminate that work.

Does anyone know which 68000 compilers were available in 1993, and which
could produce ROM code? Or a few?



I've looked at Aztec C68K but ruled it out on the basis that the _strlen
library function doesn't match up -- this is the one from the ROM:

_strlen:
  movea.l  4(sp), a0
  move.l   a0, d0
_strlen_l001:
  tst.b    (a0+)
  bne.s    _strlen_l001
  sub.l    a0, d0
  not.l    d0
  rts


Aztec is identical up to the bne, then:

  sub.l    d0, a0
  move.l   a0, d0
  sub,l    #1, d0
  rts

Which is one instruction longer... so it's not Aztec.


Other parts of the system apparently used VME-bus modules... so this
wasn't a small operation.

Anyway, whatever compiler this is, it pulls in Motorola's Fast Floating
Point library.


Thanks,
-- 
Phil.
classiccmp at philpem.me.uk
http://www.philpem.me.uk/


More information about the cctech mailing list