trunk/src/emu/cpu/e132xs/e132xs.c
| r23846 | r23847 | |
| 291 | 291 | //------------------------------------------------- |
| 292 | 292 | |
| 293 | 293 | hyperstone_device::hyperstone_device(const machine_config &mconfig, const char *name, const char *tag, device_t *owner, UINT32 clock, |
| 294 | | const device_type type, UINT32 prg_data_width, UINT32 io_data_width, address_map_constructor internal_map) |
| 295 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 294 | const device_type type, UINT32 prg_data_width, UINT32 io_data_width, address_map_constructor internal_map, const char *shortname, const char *source) |
| 295 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 296 | 296 | m_program_config("program", ENDIANNESS_BIG, prg_data_width, 32, 0, internal_map), |
| 297 | 297 | m_io_config("io", ENDIANNESS_BIG, io_data_width, 15), |
| 298 | 298 | m_icount(0) |
| r23846 | r23847 | |
| 308 | 308 | //------------------------------------------------- |
| 309 | 309 | |
| 310 | 310 | e116t_device::e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 311 | | : hyperstone_device(mconfig, "E1-16T", tag, owner, clock, E116T, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map)) |
| 311 | : hyperstone_device(mconfig, "E1-16T", tag, owner, clock, E116T, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map), "e116t", __FILE__) |
| 312 | 312 | { |
| 313 | 313 | } |
| 314 | 314 | |
| r23846 | r23847 | |
| 318 | 318 | //------------------------------------------------- |
| 319 | 319 | |
| 320 | 320 | e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 321 | | : hyperstone_device(mconfig, "E1-16XT", tag, owner, clock, E116XT, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map)) |
| 321 | : hyperstone_device(mconfig, "E1-16XT", tag, owner, clock, E116XT, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map), "e116xt", __FILE__) |
| 322 | 322 | { |
| 323 | 323 | } |
| 324 | 324 | |
| r23846 | r23847 | |
| 328 | 328 | //------------------------------------------------- |
| 329 | 329 | |
| 330 | 330 | e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 331 | | : hyperstone_device(mconfig, "E1-16XS", tag, owner, clock, E116XS, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map)) |
| 331 | : hyperstone_device(mconfig, "E1-16XS", tag, owner, clock, E116XS, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map), "e116xs", __FILE__) |
| 332 | 332 | { |
| 333 | 333 | } |
| 334 | 334 | |
| r23846 | r23847 | |
| 338 | 338 | //------------------------------------------------- |
| 339 | 339 | |
| 340 | 340 | e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 341 | | : hyperstone_device(mconfig, "E1-16XSR", tag, owner, clock, E116XT, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map)) |
| 341 | : hyperstone_device(mconfig, "E1-16XSR", tag, owner, clock, E116XT, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map), "e116xsr", __FILE__) |
| 342 | 342 | { |
| 343 | 343 | } |
| 344 | 344 | |
| r23846 | r23847 | |
| 348 | 348 | //------------------------------------------------- |
| 349 | 349 | |
| 350 | 350 | e132n_device::e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 351 | | : hyperstone_device(mconfig, "E1-32N", tag, owner, clock, E132N, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map)) |
| 351 | : hyperstone_device(mconfig, "E1-32N", tag, owner, clock, E132N, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map), "e132n", __FILE__) |
| 352 | 352 | { |
| 353 | 353 | } |
| 354 | 354 | |
| r23846 | r23847 | |
| 358 | 358 | //------------------------------------------------- |
| 359 | 359 | |
| 360 | 360 | e132t_device::e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 361 | | : hyperstone_device(mconfig, "E1-32T", tag, owner, clock, E132T, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map)) |
| 361 | : hyperstone_device(mconfig, "E1-32T", tag, owner, clock, E132T, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map), "e132t", __FILE__) |
| 362 | 362 | { |
| 363 | 363 | } |
| 364 | 364 | |
| r23846 | r23847 | |
| 368 | 368 | //------------------------------------------------- |
| 369 | 369 | |
| 370 | 370 | e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 371 | | : hyperstone_device(mconfig, "E1-32XN", tag, owner, clock, E132XN, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map)) |
| 371 | : hyperstone_device(mconfig, "E1-32XN", tag, owner, clock, E132XN, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map), "e132xn", __FILE__) |
| 372 | 372 | { |
| 373 | 373 | } |
| 374 | 374 | |
| r23846 | r23847 | |
| 378 | 378 | //------------------------------------------------- |
| 379 | 379 | |
| 380 | 380 | e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 381 | | : hyperstone_device(mconfig, "E1-32XT", tag, owner, clock, E132XT, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map)) |
| 381 | : hyperstone_device(mconfig, "E1-32XT", tag, owner, clock, E132XT, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map), "e132xt", __FILE__) |
| 382 | 382 | { |
| 383 | 383 | } |
| 384 | 384 | |
| r23846 | r23847 | |
| 388 | 388 | //------------------------------------------------- |
| 389 | 389 | |
| 390 | 390 | e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 391 | | : hyperstone_device(mconfig, "E1-32XS", tag, owner, clock, E132XS, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map)) |
| 391 | : hyperstone_device(mconfig, "E1-32XS", tag, owner, clock, E132XS, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map), "e132xs", __FILE__) |
| 392 | 392 | { |
| 393 | 393 | } |
| 394 | 394 | |
| r23846 | r23847 | |
| 398 | 398 | //------------------------------------------------- |
| 399 | 399 | |
| 400 | 400 | e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 401 | | : hyperstone_device(mconfig, "E1-32XSR", tag, owner, clock, E132XSR, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map)) |
| 401 | : hyperstone_device(mconfig, "E1-32XSR", tag, owner, clock, E132XSR, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map), "e132xsr", __FILE__) |
| 402 | 402 | { |
| 403 | 403 | } |
| 404 | 404 | |
| r23846 | r23847 | |
| 408 | 408 | //------------------------------------------------- |
| 409 | 409 | |
| 410 | 410 | gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 411 | | : hyperstone_device(mconfig, "GMS30C2116", tag, owner, clock, GMS30C2116, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map)) |
| 411 | : hyperstone_device(mconfig, "GMS30C2116", tag, owner, clock, GMS30C2116, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map), "gms30c2116", __FILE__) |
| 412 | 412 | { |
| 413 | 413 | } |
| 414 | 414 | |
| r23846 | r23847 | |
| 418 | 418 | //------------------------------------------------- |
| 419 | 419 | |
| 420 | 420 | gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 421 | | : hyperstone_device(mconfig, "GMS30C2132", tag, owner, clock, GMS30C2132, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map)) |
| 421 | : hyperstone_device(mconfig, "GMS30C2132", tag, owner, clock, GMS30C2132, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map), "gms30c2132", __FILE__) |
| 422 | 422 | { |
| 423 | 423 | } |
| 424 | 424 | |
| r23846 | r23847 | |
| 428 | 428 | //------------------------------------------------- |
| 429 | 429 | |
| 430 | 430 | gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 431 | | : hyperstone_device(mconfig, "GMS30C2216", tag, owner, clock, GMS30C2216, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map)) |
| 431 | : hyperstone_device(mconfig, "GMS30C2216", tag, owner, clock, GMS30C2216, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map), "gms30c2216", __FILE__) |
| 432 | 432 | { |
| 433 | 433 | } |
| 434 | 434 | |
| r23846 | r23847 | |
| 438 | 438 | //------------------------------------------------- |
| 439 | 439 | |
| 440 | 440 | gms30c2232_device::gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 441 | | : hyperstone_device(mconfig, "GMS30C2232", tag, owner, clock, GMS30C2232, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map)) |
| 441 | : hyperstone_device(mconfig, "GMS30C2232", tag, owner, clock, GMS30C2232, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map), "gms30c2232", __FILE__) |
| 442 | 442 | { |
| 443 | 443 | } |
| 444 | 444 | |
trunk/src/emu/cpu/cosmac/cosmac.c
| r23846 | r23847 | |
| 269 | 269 | // cosmac_device - constructor |
| 270 | 270 | //------------------------------------------------- |
| 271 | 271 | |
| 272 | | cosmac_device::cosmac_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
| 273 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 272 | cosmac_device::cosmac_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 273 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 274 | 274 | m_program_config("program", ENDIANNESS_LITTLE, 8, 16), |
| 275 | 275 | m_io_config("io", ENDIANNESS_LITTLE, 8, 3), |
| 276 | 276 | m_op(0), |
| r23846 | r23847 | |
| 293 | 293 | //------------------------------------------------- |
| 294 | 294 | |
| 295 | 295 | cdp1801_device::cdp1801_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 296 | | : cosmac_device(mconfig, CDP1801, "CDP1801", tag, owner, clock) |
| 296 | : cosmac_device(mconfig, CDP1801, "CDP1801", tag, owner, clock, "cdp1801", __FILE__) |
| 297 | 297 | { |
| 298 | 298 | } |
| 299 | 299 | |
| r23846 | r23847 | |
| 303 | 303 | //------------------------------------------------- |
| 304 | 304 | |
| 305 | 305 | cdp1802_device::cdp1802_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 306 | | : cosmac_device(mconfig, CDP1802, "CDP1802", tag, owner, clock) |
| 306 | : cosmac_device(mconfig, CDP1802, "CDP1802", tag, owner, clock, "cdp1802", __FILE__) |
| 307 | 307 | { |
| 308 | 308 | } |
| 309 | 309 | |
trunk/src/emu/cpu/upd7725/upd7725.c
| r23846 | r23847 | |
| 22 | 22 | const device_type UPD7725 = &device_creator<upd7725_device>; |
| 23 | 23 | const device_type UPD96050 = &device_creator<upd96050_device>; |
| 24 | 24 | |
| 25 | | necdsp_device::necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, UINT32 abits, UINT32 dbits, const char *name) |
| 26 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 25 | necdsp_device::necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, UINT32 abits, UINT32 dbits, const char *name, const char *shortname, const char *source) |
| 26 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 27 | 27 | m_program_config("program", ENDIANNESS_BIG, 32, abits, -2), // data bus width, address bus width, -2 means DWORD-addressable |
| 28 | 28 | m_data_config("data", ENDIANNESS_BIG, 16, dbits, -1), // -1 for WORD-addressable |
| 29 | 29 | m_irq(0), |
| r23846 | r23847 | |
| 35 | 35 | |
| 36 | 36 | |
| 37 | 37 | upd7725_device::upd7725_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 38 | | : necdsp_device(mconfig, UPD7725, tag, owner, clock, 11, 11, "uPD7725") |
| 38 | : necdsp_device(mconfig, UPD7725, tag, owner, clock, 11, 11, "uPD7725", "upd7725", __FILE__) |
| 39 | 39 | { |
| 40 | 40 | } |
| 41 | 41 | |
| 42 | 42 | upd96050_device::upd96050_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | | : necdsp_device(mconfig, UPD96050, tag, owner, clock, 14, 12, "uPD96050") |
| 43 | : necdsp_device(mconfig, UPD96050, tag, owner, clock, 14, 12, "uPD96050", "upd96050", __FILE__) |
| 44 | 44 | { |
| 45 | 45 | } |
| 46 | 46 | |
trunk/src/emu/cpu/avr8/avr8.c
| r23846 | r23847 | |
| 327 | 327 | //------------------------------------------------- |
| 328 | 328 | |
| 329 | 329 | atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 330 | | : avr8_device(mconfig, tag, owner, clock, ATMEGA88, 0x0fff, ADDRESS_MAP_NAME(avr8_internal_map)) |
| 330 | : avr8_device(mconfig, tag, owner, clock, ATMEGA88, 0x0fff, ADDRESS_MAP_NAME(avr8_internal_map), "atmega88", __FILE__) |
| 331 | 331 | { |
| 332 | 332 | } |
| 333 | 333 | |
| r23846 | r23847 | |
| 336 | 336 | //------------------------------------------------- |
| 337 | 337 | |
| 338 | 338 | atmega644_device::atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 339 | | : avr8_device(mconfig, tag, owner, clock, ATMEGA644, 0xffff, ADDRESS_MAP_NAME(avr8_internal_map)) |
| 339 | : avr8_device(mconfig, tag, owner, clock, ATMEGA644, 0xffff, ADDRESS_MAP_NAME(avr8_internal_map), "atmega644", __FILE__) |
| 340 | 340 | { |
| 341 | 341 | } |
| 342 | 342 | |
| r23846 | r23847 | |
| 344 | 344 | // avr8_device - constructor |
| 345 | 345 | //------------------------------------------------- |
| 346 | 346 | |
| 347 | | avr8_device::avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock, const device_type type, UINT32 addr_mask, address_map_constructor internal_map) |
| 348 | | : cpu_device(mconfig, type, "AVR8", tag, owner, clock), |
| 347 | avr8_device::avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock, const device_type type, UINT32 addr_mask, address_map_constructor internal_map, const char *shortname, const char *source) |
| 348 | : cpu_device(mconfig, type, "AVR8", tag, owner, clock, shortname, source), |
| 349 | 349 | m_program_config("program", ENDIANNESS_LITTLE, 8, 22), |
| 350 | 350 | m_data_config("data", ENDIANNESS_LITTLE, 8, 16, 0, internal_map), |
| 351 | 351 | m_io_config("io", ENDIANNESS_LITTLE, 8, 2), |
trunk/src/emu/cpu/tms0980/tms0980.h
| r23846 | r23847 | |
| 28 | 28 | // construction/destruction |
| 29 | 29 | tms1xxx_cpu_device( const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock |
| 30 | 30 | , const UINT32* decode_table, UINT16 o_mask, UINT16 r_mask, UINT8 pc_size, UINT8 byte_size, UINT8 x_bits |
| 31 | | , int program_addrbus_width, address_map_constructor program, int data_addrbus_width, address_map_constructor data) |
| 32 | | : cpu_device( mconfig, type, name, tag, owner, clock ) |
| 31 | , int program_addrbus_width, address_map_constructor program, int data_addrbus_width, address_map_constructor data, const char *shortname, const char *source) |
| 32 | : cpu_device( mconfig, type, name, tag, owner, clock, shortname, source) |
| 33 | 33 | , m_program_config("program", ENDIANNESS_BIG, byte_size > 8 ? 16 : 8, program_addrbus_width, 0, program ) |
| 34 | 34 | , m_data_config("data", ENDIANNESS_BIG, 8, data_addrbus_width, 0, data ) |
| 35 | 35 | , m_o_mask( o_mask ) |
| r23846 | r23847 | |
| 144 | 144 | { |
| 145 | 145 | public: |
| 146 | 146 | tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); |
| 147 | | tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask); |
| 147 | tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask, const char *shortname, const char *source); |
| 148 | 148 | |
| 149 | 149 | protected: |
| 150 | 150 | // device_state_interface overrides |
| r23846 | r23847 | |
| 179 | 179 | { |
| 180 | 180 | public: |
| 181 | 181 | tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); |
| 182 | | tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask); |
| 182 | tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask, const char *shortname, const char *source); |
| 183 | 183 | |
| 184 | 184 | protected: |
| 185 | 185 | // device_state_interface overrides |
trunk/src/emu/cpu/tms0980/tms0980.c
| r23846 | r23847 | |
| 1042 | 1042 | |
| 1043 | 1043 | tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1044 | 1044 | : tms1xxx_cpu_device( mconfig, TMS0980, "TMS0980", tag, owner, clock, tms0980_decode, 0x00ff, 0x07ff, 7, 9, 4 |
| 1045 | | , 12, ADDRESS_MAP_NAME( tms0980_internal_rom ), 7, ADDRESS_MAP_NAME( tms0980_internal_ram ) ) |
| 1045 | , 12, ADDRESS_MAP_NAME( tms0980_internal_rom ), 7, ADDRESS_MAP_NAME( tms0980_internal_ram ), "tms0980", __FILE__) |
| 1046 | 1046 | { |
| 1047 | 1047 | } |
| 1048 | 1048 | |
| r23846 | r23847 | |
| 1056 | 1056 | |
| 1057 | 1057 | tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1058 | 1058 | : tms1xxx_cpu_device( mconfig, TMS1000, "TMS1000", tag, owner, clock, tms1000_default_decode, 0x00ff, 0x07ff, 6, 8, 2 |
| 1059 | | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ) ) |
| 1059 | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ), "tms1000", __FILE__) |
| 1060 | 1060 | { |
| 1061 | 1061 | } |
| 1062 | 1062 | |
| 1063 | 1063 | |
| 1064 | | tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, device_type type, const char*name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask) |
| 1064 | tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, device_type type, const char*name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask, const char *shortname, const char *source) |
| 1065 | 1065 | : tms1xxx_cpu_device( mconfig, type, name, tag, owner, clock, tms1000_default_decode, o_mask, r_mask, 6, 8, 2 |
| 1066 | | , 10, ADDRESS_MAP_NAME( program_10bit_8 ), 6, ADDRESS_MAP_NAME( data_6bit ) ) |
| 1066 | , 10, ADDRESS_MAP_NAME( program_10bit_8 ), 6, ADDRESS_MAP_NAME( data_6bit ), shortname, source ) |
| 1067 | 1067 | { |
| 1068 | 1068 | } |
| 1069 | 1069 | |
| r23846 | r23847 | |
| 1076 | 1076 | |
| 1077 | 1077 | |
| 1078 | 1078 | tms1070_cpu_device::tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1079 | | : tms1000_cpu_device( mconfig, TMS1070, "TMS1070", tag, owner, clock, 0x00ff, 0x07ff ) |
| 1079 | : tms1000_cpu_device( mconfig, TMS1070, "TMS1070", tag, owner, clock, 0x00ff, 0x07ff, "tms1070", __FILE__) |
| 1080 | 1080 | { |
| 1081 | 1081 | } |
| 1082 | 1082 | |
| 1083 | 1083 | |
| 1084 | 1084 | tms1200_cpu_device::tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1085 | | : tms1000_cpu_device( mconfig, TMS1200, "TMS1200", tag, owner, clock, 0x00ff, 0x1fff ) |
| 1085 | : tms1000_cpu_device( mconfig, TMS1200, "TMS1200", tag, owner, clock, 0x00ff, 0x1fff, "tms1200", __FILE__) |
| 1086 | 1086 | { |
| 1087 | 1087 | } |
| 1088 | 1088 | |
| 1089 | 1089 | |
| 1090 | 1090 | tms1270_cpu_device::tms1270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1091 | | : tms1000_cpu_device( mconfig, TMS1270, "TMS1270", tag, owner, clock, 0x03ff, 0x1fff ) |
| 1091 | : tms1000_cpu_device( mconfig, TMS1270, "TMS1270", tag, owner, clock, 0x03ff, 0x1fff, "tms1270", __FILE__) |
| 1092 | 1092 | { |
| 1093 | 1093 | } |
| 1094 | 1094 | |
| 1095 | 1095 | |
| 1096 | 1096 | tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1097 | 1097 | : tms1xxx_cpu_device( mconfig, TMS1100, "TMS1100", tag, owner, clock, tms1100_default_decode, 0x00ff, 0x07ff, 6, 8, 3 |
| 1098 | | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ) ) |
| 1098 | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ), "tms1100", __FILE__ ) |
| 1099 | 1099 | { |
| 1100 | 1100 | } |
| 1101 | 1101 | |
| 1102 | 1102 | |
| 1103 | | tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, device_type type, const char*name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask) |
| 1103 | tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, device_type type, const char*name, const char *tag, device_t *owner, UINT32 clock, UINT16 o_mask, UINT16 r_mask, const char *shortname, const char *source) |
| 1104 | 1104 | : tms1xxx_cpu_device( mconfig, type, name, tag, owner, clock, tms1100_default_decode, o_mask, r_mask, 6, 8, 3 |
| 1105 | | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ) ) |
| 1105 | , 11, ADDRESS_MAP_NAME( program_11bit_8 ), 7, ADDRESS_MAP_NAME( data_7bit ), shortname, source ) |
| 1106 | 1106 | { |
| 1107 | 1107 | } |
| 1108 | 1108 | |
| r23846 | r23847 | |
| 1115 | 1115 | |
| 1116 | 1116 | |
| 1117 | 1117 | tms1300_cpu_device::tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1118 | | : tms1100_cpu_device( mconfig, TMS1300, "TMS1300", tag, owner, clock, 0x00ff, 0xffff ) |
| 1118 | : tms1100_cpu_device( mconfig, TMS1300, "TMS1300", tag, owner, clock, 0x00ff, 0xffff, "tms1300", __FILE__ ) |
| 1119 | 1119 | { |
| 1120 | 1120 | } |
| 1121 | 1121 | |
trunk/src/emu/cpu/adsp2100/adsp2100.c
| r23846 | r23847 | |
| 148 | 148 | // adsp21xx_device - constructor |
| 149 | 149 | //------------------------------------------------- |
| 150 | 150 | |
| 151 | | adsp21xx_device::adsp21xx_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 chiptype) |
| 152 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 151 | adsp21xx_device::adsp21xx_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 chiptype, const char *shortname, const char *source) |
| 152 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 153 | 153 | m_program_config("program", ENDIANNESS_LITTLE, 32, 14, -2), |
| 154 | 154 | m_data_config("data", ENDIANNESS_LITTLE, 16, 14, -1), |
| 155 | 155 | m_chip_type(chiptype), |
| r23846 | r23847 | |
| 278 | 278 | } |
| 279 | 279 | |
| 280 | 280 | adsp2100_device::adsp2100_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 281 | | : adsp21xx_device(mconfig, ADSP2100, "ADSP-2100", tag, owner, clock, CHIP_TYPE_ADSP2100) { } |
| 281 | : adsp21xx_device(mconfig, ADSP2100, "ADSP-2100", tag, owner, clock, CHIP_TYPE_ADSP2100, "adsp2100", __FILE__) { } |
| 282 | 282 | |
| 283 | 283 | adsp2101_device::adsp2101_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 284 | | : adsp21xx_device(mconfig, ADSP2101, "ADSP-2101", tag, owner, clock, CHIP_TYPE_ADSP2101) { } |
| 284 | : adsp21xx_device(mconfig, ADSP2101, "ADSP-2101", tag, owner, clock, CHIP_TYPE_ADSP2101, "adsp2100", __FILE__) { } |
| 285 | 285 | |
| 286 | | adsp2101_device::adsp2101_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 chiptype) |
| 287 | | : adsp21xx_device(mconfig, type, name, tag, owner, clock, chiptype) { } |
| 286 | adsp2101_device::adsp2101_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 chiptype, const char *shortname, const char *source) |
| 287 | : adsp21xx_device(mconfig, type, name, tag, owner, clock, chiptype, shortname, source) { } |
| 288 | 288 | |
| 289 | 289 | adsp2104_device::adsp2104_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 290 | | : adsp2101_device(mconfig, ADSP2104, "ADSP-2104", tag, owner, clock, CHIP_TYPE_ADSP2104) { } |
| 290 | : adsp2101_device(mconfig, ADSP2104, "ADSP-2104", tag, owner, clock, CHIP_TYPE_ADSP2104, "adsp2100", __FILE__) { } |
| 291 | 291 | |
| 292 | 292 | adsp2105_device::adsp2105_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 293 | | : adsp2101_device(mconfig, ADSP2105, "ADSP-2105", tag, owner, clock, CHIP_TYPE_ADSP2105) { } |
| 293 | : adsp2101_device(mconfig, ADSP2105, "ADSP-2105", tag, owner, clock, CHIP_TYPE_ADSP2105, "adsp2100", __FILE__) { } |
| 294 | 294 | |
| 295 | 295 | adsp2115_device::adsp2115_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 296 | | : adsp2101_device(mconfig, ADSP2115, "ADSP-2115", tag, owner, clock, CHIP_TYPE_ADSP2115) { } |
| 296 | : adsp2101_device(mconfig, ADSP2115, "ADSP-2115", tag, owner, clock, CHIP_TYPE_ADSP2115, "adsp2100", __FILE__) { } |
| 297 | 297 | |
| 298 | 298 | adsp2181_device::adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 299 | | : adsp21xx_device(mconfig, ADSP2181, "ADSP-2181", tag, owner, clock, CHIP_TYPE_ADSP2181), |
| 299 | : adsp21xx_device(mconfig, ADSP2181, "ADSP-2181", tag, owner, clock, CHIP_TYPE_ADSP2181, "adsp2100", __FILE__), |
| 300 | 300 | m_io_config("I/O", ENDIANNESS_LITTLE, 16, 11, -1) { } |
| 301 | 301 | |
| 302 | 302 | |
trunk/src/emu/cpu/alph8201/alph8201.c
| r23846 | r23847 | |
| 172 | 172 | |
| 173 | 173 | |
| 174 | 174 | alpha8201_cpu_device::alpha8201_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 175 | | : cpu_device(mconfig, ALPHA8201, "ALPHA-8201", tag, owner, clock) |
| 175 | : cpu_device(mconfig, ALPHA8201, "ALPHA-8201", tag, owner, clock, "alpha8201", __FILE__) |
| 176 | 176 | , m_program_config("program", ENDIANNESS_LITTLE, 8, 10, 0) |
| 177 | 177 | , m_io_config("io", ENDIANNESS_LITTLE, 8, 6, 0) |
| 178 | 178 | , m_opmap(opcode_8201) |
| r23846 | r23847 | |
| 180 | 180 | } |
| 181 | 181 | |
| 182 | 182 | |
| 183 | | alpha8201_cpu_device::alpha8201_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
| 184 | | : cpu_device(mconfig, type, name, tag, owner, clock) |
| 183 | alpha8201_cpu_device::alpha8201_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 184 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source) |
| 185 | 185 | , m_program_config("program", ENDIANNESS_LITTLE, 8, 10, 0) |
| 186 | 186 | , m_io_config("io", ENDIANNESS_LITTLE, 8, 6, 0) |
| 187 | 187 | , m_opmap(opcode_8201) |
| r23846 | r23847 | |
| 189 | 189 | } |
| 190 | 190 | |
| 191 | 191 | alpha8301_cpu_device::alpha8301_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 192 | | : alpha8201_cpu_device(mconfig, ALPHA8301, "ALPHA-8301", tag, owner, clock) |
| 192 | : alpha8201_cpu_device(mconfig, ALPHA8301, "ALPHA-8301", tag, owner, clock, "alpha8301", __FILE__) |
| 193 | 193 | { |
| 194 | 194 | m_opmap = opcode_8301; |
| 195 | 195 | } |
trunk/src/emu/cpu/mips/r3000.c
| r23846 | r23847 | |
| 122 | 122 | // r3000_device - constructor |
| 123 | 123 | //------------------------------------------------- |
| 124 | 124 | |
| 125 | | r3000_device::r3000_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, chip_type chiptype) |
| 126 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 125 | r3000_device::r3000_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, chip_type chiptype, const char *shortname, const char *source) |
| 126 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 127 | 127 | m_program_config_be("program", ENDIANNESS_BIG, 32, 29), |
| 128 | 128 | m_program_config_le("program", ENDIANNESS_LITTLE, 32, 29), |
| 129 | 129 | m_program(NULL), |
| r23846 | r23847 | |
| 168 | 168 | //------------------------------------------------- |
| 169 | 169 | |
| 170 | 170 | r3041_device::r3041_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 171 | | : r3000_device(mconfig, R3041, "R3041", tag, owner, clock, CHIP_TYPE_R3041) { } |
| 171 | : r3000_device(mconfig, R3041, "R3041", tag, owner, clock, CHIP_TYPE_R3041, "r3041", __FILE__) { } |
| 172 | 172 | |
| 173 | 173 | |
| 174 | 174 | //------------------------------------------------- |
| r23846 | r23847 | |
| 176 | 176 | //------------------------------------------------- |
| 177 | 177 | |
| 178 | 178 | r3051_device::r3051_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 179 | | : r3000_device(mconfig, R3051, "R3051", tag, owner, clock, CHIP_TYPE_R3051) { } |
| 179 | : r3000_device(mconfig, R3051, "R3051", tag, owner, clock, CHIP_TYPE_R3051, "r3051", __FILE__) { } |
| 180 | 180 | |
| 181 | 181 | |
| 182 | 182 | //------------------------------------------------- |
| r23846 | r23847 | |
| 184 | 184 | //------------------------------------------------- |
| 185 | 185 | |
| 186 | 186 | r3052_device::r3052_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 187 | | : r3000_device(mconfig, R3052, "R3052", tag, owner, clock, CHIP_TYPE_R3052) { } |
| 187 | : r3000_device(mconfig, R3052, "R3052", tag, owner, clock, CHIP_TYPE_R3052, "r3052", __FILE__) { } |
| 188 | 188 | |
| 189 | 189 | |
| 190 | 190 | //------------------------------------------------- |
| r23846 | r23847 | |
| 192 | 192 | //------------------------------------------------- |
| 193 | 193 | |
| 194 | 194 | r3071_device::r3071_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 195 | | : r3000_device(mconfig, R3071, "R3071", tag, owner, clock, CHIP_TYPE_R3071) { } |
| 195 | : r3000_device(mconfig, R3071, "R3071", tag, owner, clock, CHIP_TYPE_R3071, "r3071", __FILE__) { } |
| 196 | 196 | |
| 197 | 197 | |
| 198 | 198 | //------------------------------------------------- |
| r23846 | r23847 | |
| 200 | 200 | //------------------------------------------------- |
| 201 | 201 | |
| 202 | 202 | r3081_device::r3081_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 203 | | : r3000_device(mconfig, R3081, "R3081", tag, owner, clock, CHIP_TYPE_R3081) { } |
| 203 | : r3000_device(mconfig, R3081, "R3081", tag, owner, clock, CHIP_TYPE_R3081, "r3081", __FILE__) { } |
| 204 | 204 | |
| 205 | 205 | |
| 206 | 206 | //------------------------------------------------- |
trunk/src/emu/cpu/psx/psx.c
| r23846 | r23847 | |
| 1729 | 1729 | // psxcpu_device - constructor |
| 1730 | 1730 | //------------------------------------------------- |
| 1731 | 1731 | |
| 1732 | | psxcpu_device::psxcpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) : |
| 1733 | | cpu_device(mconfig, type, name, tag, owner, clock), |
| 1732 | psxcpu_device::psxcpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 1733 | cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 1734 | 1734 | m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0, ADDRESS_MAP_NAME(psxcpu_internal_map)), |
| 1735 | 1735 | m_gpu_read_handler(*this), |
| 1736 | 1736 | m_gpu_write_handler(*this), |
| r23846 | r23847 | |
| 1743 | 1743 | } |
| 1744 | 1744 | |
| 1745 | 1745 | cxd8530aq_device::cxd8530aq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1746 | | : psxcpu_device(mconfig, CXD8661R, "CXD8530AQ", tag, owner, clock) |
| 1746 | : psxcpu_device(mconfig, CXD8661R, "CXD8530AQ", tag, owner, clock, "cxd8530aq", __FILE__) |
| 1747 | 1747 | { |
| 1748 | 1748 | } |
| 1749 | 1749 | |
| 1750 | 1750 | cxd8530bq_device::cxd8530bq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1751 | | : psxcpu_device(mconfig, CXD8661R, "CXD8530BQ", tag, owner, clock) |
| 1751 | : psxcpu_device(mconfig, CXD8661R, "CXD8530BQ", tag, owner, clock, "cxd8530bq", __FILE__) |
| 1752 | 1752 | { |
| 1753 | 1753 | } |
| 1754 | 1754 | |
| 1755 | 1755 | cxd8530cq_device::cxd8530cq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1756 | | : psxcpu_device(mconfig, CXD8661R, "CXD8530CQ", tag, owner, clock) |
| 1756 | : psxcpu_device(mconfig, CXD8661R, "CXD8530CQ", tag, owner, clock, "cxd8530cq", __FILE__) |
| 1757 | 1757 | { |
| 1758 | 1758 | } |
| 1759 | 1759 | |
| 1760 | 1760 | cxd8661r_device::cxd8661r_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1761 | | : psxcpu_device(mconfig, CXD8661R, "CXD8661R", tag, owner, clock) |
| 1761 | : psxcpu_device(mconfig, CXD8661R, "CXD8661R", tag, owner, clock, "cxd8661r", __FILE__) |
| 1762 | 1762 | { |
| 1763 | 1763 | } |
| 1764 | 1764 | |
| 1765 | 1765 | cxd8606bq_device::cxd8606bq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1766 | | : psxcpu_device(mconfig, CXD8606BQ, "CXD8606BQ", tag, owner, clock) |
| 1766 | : psxcpu_device(mconfig, CXD8606BQ, "CXD8606BQ", tag, owner, clock, "cxd8606bq", __FILE__) |
| 1767 | 1767 | { |
| 1768 | 1768 | } |
| 1769 | 1769 | |
| 1770 | 1770 | cxd8606cq_device::cxd8606cq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1771 | | : psxcpu_device(mconfig, CXD8606CQ, "CXD8606CQ", tag, owner, clock) |
| 1771 | : psxcpu_device(mconfig, CXD8606CQ, "CXD8606CQ", tag, owner, clock, "cxd8606cq", __FILE__) |
| 1772 | 1772 | { |
| 1773 | 1773 | } |
| 1774 | 1774 | |
trunk/src/emu/cpu/m6805/m6805.h
| r23846 | r23847 | |
| 24 | 24 | { |
| 25 | 25 | public: |
| 26 | 26 | // construction/destruction |
| 27 | | m6805_base_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock, const device_type type, const char *name, UINT32 addr_width); |
| 27 | m6805_base_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock, const device_type type, const char *name, UINT32 addr_width, const char *shortname, const char *source); |
| 28 | 28 | |
| 29 | 29 | protected: |
| 30 | 30 | // device-level overrides |
| r23846 | r23847 | |
| 293 | 293 | public: |
| 294 | 294 | // construction/destruction |
| 295 | 295 | m6805_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 296 | | : m6805_base_device(mconfig, tag, owner, clock, M6805, "M6805", 12) { } |
| 296 | : m6805_base_device(mconfig, tag, owner, clock, M6805, "M6805", 12, "m6805", __FILE__) { } |
| 297 | 297 | |
| 298 | 298 | protected: |
| 299 | 299 | virtual void execute_set_input(int inputnum, int state); |
| r23846 | r23847 | |
| 306 | 306 | public: |
| 307 | 307 | // construction/destruction |
| 308 | 308 | m68hc05eg_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 309 | | : m6805_base_device(mconfig, tag, owner, clock, M68HC05EG, "M68HC05EG", 13) { } |
| 309 | : m6805_base_device(mconfig, tag, owner, clock, M68HC05EG, "M68HC05EG", 13, "m68hc05eg", __FILE__) { } |
| 310 | 310 | |
| 311 | 311 | protected: |
| 312 | 312 | // device-level overrides |
| r23846 | r23847 | |
| 324 | 324 | public: |
| 325 | 325 | // construction/destruction |
| 326 | 326 | m68705_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 327 | | : m6805_base_device(mconfig, tag, owner, clock, M68705, "M68705", 12) { } |
| 327 | : m6805_base_device(mconfig, tag, owner, clock, M68705, "M68705", 12, "m68705", __FILE__) { } |
| 328 | 328 | |
| 329 | 329 | protected: |
| 330 | 330 | // device-level overrides |
| r23846 | r23847 | |
| 342 | 342 | public: |
| 343 | 343 | // construction/destruction |
| 344 | 344 | hd63705_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 345 | | : m6805_base_device(mconfig, tag, owner, clock, HD63705, "HD63705", 16) { } |
| 345 | : m6805_base_device(mconfig, tag, owner, clock, HD63705, "HD63705", 16, "hd63705", __FILE__) { } |
| 346 | 346 | |
| 347 | 347 | protected: |
| 348 | 348 | // device-level overrides |
trunk/src/emu/cpu/m6809/m6809.c
| r23846 | r23847 | |
| 106 | 106 | // m6809_base_device - constructor |
| 107 | 107 | //------------------------------------------------- |
| 108 | 108 | |
| 109 | | m6809_base_device::m6809_base_device(const machine_config &mconfig, const char *name, const char *tag, device_t *owner, UINT32 clock, const device_type type, int divider) |
| 110 | | : cpu_device(mconfig, type, name, tag, owner, clock), |
| 109 | m6809_base_device::m6809_base_device(const machine_config &mconfig, const char *name, const char *tag, device_t *owner, UINT32 clock, const device_type type, int divider, const char *shortname, const char *source) |
| 110 | : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 111 | 111 | m_program_config("program", ENDIANNESS_BIG, 8, 16), |
| 112 | 112 | m_clock_divider(divider) |
| 113 | 113 | { |
| r23846 | r23847 | |
| 539 | 539 | //------------------------------------------------- |
| 540 | 540 | |
| 541 | 541 | m6809_device::m6809_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 542 | | : m6809_base_device(mconfig, "M6809", tag, owner, clock, M6809, 1) |
| 542 | : m6809_base_device(mconfig, "M6809", tag, owner, clock, M6809, 1, "m6809", __FILE__) |
| 543 | 543 | { |
| 544 | 544 | } |
| 545 | 545 | |
| r23846 | r23847 | |
| 550 | 550 | //------------------------------------------------- |
| 551 | 551 | |
| 552 | 552 | m6809e_device::m6809e_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 553 | | : m6809_base_device(mconfig, "M6809E", tag, owner, clock, M6809E, 4) |
| 553 | : m6809_base_device(mconfig, "M6809E", tag, owner, clock, M6809E, 4, "m6809e", __FILE__) |
| 554 | 554 | { |
| 555 | 555 | } |
| 556 | 556 | |