Closed larsbrinkhoff closed 7 years ago
I really don't have a strategy. Usually I either find a chip that has an interesting instruction set and code it up.. or I look for odd targets (TI/99, TRS80 for example) to add to Java Grinder. Sometimes I just get requests from people for different chips and if the instruction set looks clean I'll add them. Did you have some other targets in mind?
Here are some for your consideration.
These aren't requests from me, just what popped up when I was looking for processors to support.
Hmm.. there's RISC-V support now, although I never tested it on a real chip (been resisting getting a HiFive1 board). I also for some reason thought ColdFire was opcode compatible with 68000 too... I thought just missing some instructions and maybe addressing modes. Maybe I had it wrong. I can look into Xtensa.. and PDP-11.. hmmm does anyone use that anymore? :)
Are you wanting just simulators or the assemblers too? Are you using the chips mentioned above?
I'm not sure about the ColdFire, I believe I read some time that the instruction encoding was different. Apparently, some people are still interested in those processors.
PDP-11, just for fun. :-) It's a nice, regular instruction set. And a strong influence on successive processors like 68000 and MSP430.
I'm mostly looking for simulators. When I port to a new processor, I like to be able to run automated tests in e.g Travis CI.
I'm not actually using these devices. It's mostly for my own amusement. But I do consider which processors are in current use.
See: http://github.com/larsbrinkhoff/xForth, and
https://github.com/larsbrinkhoff/xForth/issues/1
Actually, I have 4 processors on my TODO list right now: ARC (which is maybe 20% done), THUMB2, webASM, and Java byte code.
I've never done forth before.. your project looks cool though.. I need to clone it and try it out.
Thanks. The ARC is a bit of a mystery to me. It shows up occasionally, but it doesn't seem possible to buy parts.
Feel free to ask if there's anything about my Forth stuff that's hard to understand.
Arduino 101 has an ARC chip built into it. But since I haven't finished the assembler yet, I haven't tried to program it. It's definitely not fun to write an assembler for.
Thanks for the info!
About ColdFire, I think you were probably right:
The ColdFire instruction set is "assembly source" compatible and not entirely object code compatible with the 68000. When compared to classic 68k hardware, the instruction set differs mainly in that it no longer has support for the binary-coded decimal (BCD) packed data format; it removes a number of other, less used instructions; and most instructions that are kept support fewer addressing modes. The instructions are only 16, 32, or 48 bits long, a simplification compared to the 68000 series.
Yeah, I think they labeled the instructions in the 68000 manual were labeled as Coldfire compatible.. I thought it was under the CPU32 label but reading up on that it seems that's something else. It's a shame Motorola dropped this chip in favor of PowerPC... what a neat cheap.
Since I'm also in the toolchain business, I'm curious. Do you have a strategy for adding targets? Do you have some sense which of processors are most popular?