11

Greetings all,

I am taking a Structure and Application of Microcomputers course this semester and we're programming with the Motorola 68000 series CPU/board. The course syllabus suggests running something like Easy68K or Teesside Motorola 68000 Assembler/Emulator at home to test our programs.

I told my prof I run x64 Linux and asked what sort of environment I would need to complete my coursework. He said that the easiest environment to use is a Windows XP 32bit VM with one of the two suggested applications installed, however, he doesn't really care what I use as long as I can test what I write at home.

So I'm asking if there exists some sort of emulator or environment for Linux so I can test my code, and what sort of caveats I will run into by writing and testing my code in Linux.
Also, I plan to do my editing in Vim, which probably isn't a problem, but I would like any insight into editors for 68000 assembly, if you have any.

Thanks!

EDIT: Just to clarify - I don't want to install Linux on the board at all - I want to program on my home machine, test the code locally, and then bring it onto the board for grading/running.

Bo Persson
  • 90,663
  • 31
  • 146
  • 203
Nick Presta
  • 28,134
  • 6
  • 57
  • 76
  • Given the low cost of an XP-based (Win7 soon?) netbook, if you can spare $250 or so that might be the path of least resistance. Otherwise, I suspect that Wine is likely to work well enough to run the simulator on your linux box. – RBerteig Sep 12 '09 at 02:16
  • I actually have a laptop already running WinXP that would work well, but I would prefer to do all my coding in the same environment. I have my favourite keyboard and mouse hooked up here. :-D – Nick Presta Sep 12 '09 at 02:18

9 Answers9

6

The good news is that it does look like there is some interest in making Easy68K more portable, by replacing the Windows GUI with wxWidgets. The bad news is that it is a student's final project for the prof who wrote Easy68K in the first place. See this forum post for the story.

You might try getting his current source kit to build. It may work well enough by now.

GCC has had target support for the 68K family for as long as GCC has existed, IIRC. Of course, the Gnu assembler syntax is wildly different from Motorola's.

Edit: On the subject of editors, any friendly to programmers will do. Code coloring is not all that useful for assembly language, after all. Vim should be just fine... I wrote a lot of assembly in vi back in the day.

RBerteig
  • 41,948
  • 7
  • 88
  • 128
5

I wrote the port for Easy68k. I've been busy with school and haven't had much time to work on it. Also, I am not sure how much interest there really is in 68k assembly. I may pick it back up if ample interest is shown.

  • 3
    Add an Amiga target for it and you will see all kinds of of crazy interested people creeping out from the woodwork. :-) The most hardcore ones are doing new hardware too. Google natami – Prof. Falken Feb 15 '11 at 09:07
5

A Linux assembler for multiple CPUs is here: http://xi6.com/projects/asmx/

Run using: ~/bin/asmx -C 68000 -b 0 -o out.bin -- in.asm

No emulator unfortunately, but I'm using it for Sega MegaDrive/Genesis development so I just use the Gens/GS Emulator.

Sofox
  • 5,088
  • 1
  • 19
  • 10
3

Have you looked at QEMU? It claims to do full system emulation for M68k (Coldfire).

caf
  • 233,326
  • 40
  • 323
  • 462
2

You can also look at an answer I gave to question 1552200. In your case, some would say the easiest is develop under the Amiga with native tools on UAE. But to do it legally you have to either buy the commercial Amiga Forever, or install the AROS operating system on UAE or WinUAE. AROS is a clone of Amiga OS 3.1 (+ eye candy, networking etc) If you download AROS, be sure to download the Amiga port, not the PC port.

Community
  • 1
  • 1
Prof. Falken
  • 24,226
  • 19
  • 100
  • 173
2

I am taking a similar course at university, and I'm studying m68k too, althought in great delay, here are my findings (other people could appreciate):

  1. Easy68k runs quite smoothly in GNU/Linux using Wine, unless you use two monitors.

  2. I managed to set up a virtual Debian/68k environment, in order to be able to ditch Easy68k and use GNU/Emacs to write code. Here are my notes about this thing: http://santoro.tk/blog/?p=346 . Note: this method has a main downfall: unless you're writing code in kernel-space (very unlikely for those kind of courses) you'll always be using m68k in user mode, that is, mode U. Standard GNU/Linux toolchain is available here (binutils etc).

znpy
  • 474
  • 2
  • 10
2

Here is a 68k emulator that I got to compile with:

gcc -lm -I. make68k.c

http://caesar.logiqx.com/php/library.php?id=turbo68k

I haven't actually tested any asm code with it yet, but it does compile. You will want to read the readme.txt also.

... and I had to convert upper caps to lower caps.

Prof. Falken
  • 24,226
  • 19
  • 100
  • 173
rabbitear
  • 21
  • 2
1

VirtualBox OSE is free and does REALLY well for me running windows xp. You can map a drive between the two, do your development on the Linux side, and run it on the 68K emulator on the other side. I do this regularly for many tasks, not just programming.

Man.. the 68k... memories!!

San Jacinto
  • 8,774
  • 5
  • 43
  • 58
1

I code for 68000 (predominantly Atari ST) and use VASM (http://sun.hasenbraten.de/vasm/) as my cross-assembler of choice. Linux, Mac and Windows builds exist.

Rob Cowell
  • 1,610
  • 3
  • 18
  • 34