开发者

hardware emulation project

Greetings.

I am interested in writing an emulator for some old compu开发者_Python百科ter. However, I'd like to pick something simple for a start, some architecture that is not too complicated and relatively well-known, so that its easy to find documentation. Could you suggest something? Also welcome: links to technical specs/documentation of the suggested platform, rom archives, etc. :)


The good old Commodore 64 would be a good choice. Well-documented, lots of ROM archives available, and a fair amount of community support available.

It runs on on 8-bit microprocessor (the MOS 6510) which operates a RISC instruction set and should be fairly straightforward to simulate (in as much as any hardware emulation can be called "simple" :)

The processor datasheet is even available!


Having already done something like this I would agree with e.James and go with something like the 6502. The 6502 is manageable, I think less than 256 instructions. The z80 for example multiplexes some of the opcodes and is a lot more work. With the 6502 you can go after the vic20 the commodore64, etc as well as standups like Asteroids, lunar lander, breakout and some others. The apple Iie and atari vcs (2600) and others are also 6502 based.

It is good to go with something like this that has already been emulated (and there is open source). Something, that you can examine both datasheets and implementations together when making your own. Beware not all are bug free, they may emulate one thing well perhaps because that one thing never uses this broken instruction or that flag. You may also find there are different interpretations of the datasheet.

Thanks to mame and others there are a lot of video games (not necessarily 6502 based, in general) out there, perhaps you have a favorite. The processor emulators in mame as well as others out there are often written for execution speed, and can be difficult to follow. Certainly not educational code, but heavily hand tuned for performance (was needed for a 486 platform but dont necessarily need that tuning today).

If the 6502 is too big to digest, or when you look at the peripherals you have to emulate, you might go with just the processor or a microcontroller like the 12 bit microchip pic or msp430 instruction set. very digestible, still in production so tools are available, both have c compilers for example. Not going to have sexy well known programs running or anything like that but no less educational.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜