Previous 199869 Revisions Next

r31337 Sunday 20th July, 2014 at 15:49:46 UTC by hap
some notes
[src/emu/cpu/tms7000]tms7000.c

trunk/src/emu/cpu/tms7000/tms7000.c
r31336r31337
2323 *  - memory modes with IOCNT0, currently ignored
2424 *  - timer event counter mode (timer control register, bit 6)
2525 *  - TMS70x1/2 serial port and timer 3
26 *  - TMS70C46 is same as TMS70C40, except with support for memory mapped I/O?
2726 *  - when they're needed, add TMS70Cx2, TMS7742, TMS77C82, SE70xxx
2827 *
2928 *****************************************************************************/
r31336r31337
3130#include "debugger.h"
3231#include "tms7000.h"
3332
33// 7000 is the most basic one, 128 bytes internal RAM and no internal ROM.
34// 7020 and 7040 are same, but with 2KB and 4KB internal ROM respectively.
35const device_type TMS7000 = &device_creator<tms7000_device>;
36const device_type TMS7020 = &device_creator<tms7020_device>;
37const device_type TMS7040 = &device_creator<tms7040_device>;
3438
39// Exelvision (spinoff of TI) 7020 added one custom opcode.
40const device_type TMS7020_EXL = &device_creator<tms7020_exl_device>;
41
42// CMOS devices biggest difference in a 'real world' setting is that the power
43// requirements are much lower. This obviously has no use in software emulation.
44const device_type TMS70C00 = &device_creator<tms70c00_device>;
45const device_type TMS70C20 = &device_creator<tms70c20_device>;
46const device_type TMS70C40 = &device_creator<tms70c40_device>;
47
48// 70C46 is same as 70C40, except with support for memory mapped I/O?
49const device_type TMS70C46 = &device_creator<tms70c46_device>;
50
51// 70x1 features more peripheral I/O, the main addition being a serial port.
52// 70x2 is the same, just with twice more RAM (256 bytes)
53const device_type TMS7001 = &device_creator<tms7001_device>;
54const device_type TMS7041 = &device_creator<tms7041_device>;
55const device_type TMS7002 = &device_creator<tms7002_device>;
56const device_type TMS7042 = &device_creator<tms7042_device>;
57
58
3559// flag helpers
3660#define SR_C        0x80 /* Carry */
3761#define SR_N        0x40 /* Negative */
r31336r31337
4468#define SET_CNZ(x)  m_sr = (m_sr & 0x1f) | ((x) >> 1 & 0xc0) | (((x) & 0xff) ? 0 : 0x20)
4569
4670
47const device_type TMS7000 = &device_creator<tms7000_device>;
48const device_type TMS7020 = &device_creator<tms7020_device>;
49const device_type TMS7020_EXL = &device_creator<tms7020_exl_device>;
50const device_type TMS7040 = &device_creator<tms7040_device>;
51const device_type TMS70C00 = &device_creator<tms70c00_device>;
52const device_type TMS70C20 = &device_creator<tms70c20_device>;
53const device_type TMS70C40 = &device_creator<tms70c40_device>;
54const device_type TMS70C46 = &device_creator<tms70c46_device>;
55const device_type TMS7001 = &device_creator<tms7001_device>;
56const device_type TMS7041 = &device_creator<tms7041_device>;
57const device_type TMS7002 = &device_creator<tms7002_device>;
58const device_type TMS7042 = &device_creator<tms7042_device>;
59
60
6171// internal memory maps
6272static ADDRESS_MAP_START(tms7000_io, AS_IO, 8, tms7000_device)
6373   AM_RANGE(TMS7000_PORTB, TMS7000_PORTB) AM_READNOP

Previous 199869 Revisions Next


© 1997-2024 The MAME Team