Previous 199869 Revisions Next

r29232 Thursday 3rd April, 2014 at 22:48:35 UTC by Oliver Stöneberg
use ARRAY_LENGTH (nw)
[src/emu]memory.c
[src/emu/cpu/alph8201]8201dasm.c
[src/emu/cpu/m6809]6309dasm.c 6809dasm.c
[src/emu/cpu/pic16c5x]16c5xdsm.c
[src/emu/cpu/pic16c62x]16c62xdsm.c
[src/emu/cpu/tlcs90]tlcs90.c
[src/emu/cpu/tms32010]32010dsm.c
[src/emu/cpu/tms32025]32025dsm.c
[src/emu/debug]debughlp.c
[src/emu/machine]53c810.c 6526cia.c nscsi_bus.c pckeybrd.c
[src/emu/sound]spu_tables.c
[src/emu/video]mc6847.c mc6847.h
[src/mame/drivers]famibox.c jalmah.c psikyosh.c skydiver.c snowbros.c spcforce.c
[src/mame/video]lordgun.c starshp1.c
[src/mess/drivers]gmaster.c
[src/mess/machine]6883sam.c coco.c
[src/mess/tools/floptool]main.c
[src/mess/tools/imgtool]modules.c
[src/mess/tools/imgtool/modules]ti99.c
[src/mess/video]stic.c
[src/tools]jedutil.c

trunk/src/mame/video/starshp1.c
r29231r29232
3737      5, 7        /* 0x11        - circle */
3838   };
3939
40   for (i = 0; i < sizeof(colortable_source) / sizeof(colortable_source[0]); i++)
40   for (i = 0; i < ARRAY_LENGTH(colortable_source); i++)
4141      palette.set_pen_indirect(i, colortable_source[i]);
4242}
4343
trunk/src/mame/video/lordgun.c
r29231r29232
174174{
175175   int x = linear_value - 0x3c;
176176
177   if ( (x < 0) || (x > sizeof(lordgun_gun_x_table)/sizeof(lordgun_gun_x_table[0])) )
177   if ( (x < 0) || (x > ARRAY_LENGTH(lordgun_gun_x_table)) )
178178      x = 0;
179179
180180   return lordgun_gun_x_table[x] * 1.0f / 0x1BF;
r29231r29232
186186
187187   int x = ioport(gunnames[i])->read() - 0x3c;
188188
189   if ( (x < 0) || (x > sizeof(lordgun_gun_x_table)/sizeof(lordgun_gun_x_table[0])) )
189   if ( (x < 0) || (x > ARRAY_LENGTH(lordgun_gun_x_table)) )
190190      x = 0;
191191
192192   m_gun[i].scr_x = lordgun_gun_x_table[x];
trunk/src/mame/drivers/famibox.c
r29231r29232
272272   };
273273
274274
275   for (int i = 0; i < sizeof(famicombox_banks)/sizeof(famicombox_banks[0]); i++ )
275   for (int i = 0; i < ARRAY_LENGTH(famicombox_banks); i++ )
276276   {
277277      if ( bank == famicombox_banks[i].bank ||
278278            famicombox_banks[i].bank == 0 )
trunk/src/mame/drivers/jalmah.c
r29231r29232
17621762   int res;
17631763
17641764   res = resp[m_respcount++];
1765   if (m_respcount >= sizeof(resp)/sizeof(resp[0])) m_respcount = 0;
1765   if (m_respcount >= ARRAY_LENGTH(resp)) m_respcount = 0;
17661766
17671767//  logerror("%04x: mcu_r %02x\n",space.device().safe_pc(),res);
17681768
r29231r29232
19801980   int res;
19811981
19821982   res = resp[m_respcount++];
1983   if (m_respcount >= sizeof(resp)/sizeof(resp[0])) m_respcount = 0;
1983   if (m_respcount >= ARRAY_LENGTH(resp)) m_respcount = 0;
19841984
19851985//  logerror("%04x: mcu_r %02x\n",space.device().safe_pc(),res);
19861986
r29231r29232
22592259   int res;
22602260
22612261   res = resp[m_respcount++];
2262   if (m_respcount >= sizeof(resp)/sizeof(resp[0])) m_respcount = 0;
2262   if (m_respcount >= ARRAY_LENGTH(resp)) m_respcount = 0;
22632263
22642264//  logerror("%04x: mcu_r %02x\n",space.device().safe_pc(),res);
22652265
r29231r29232
23962396   int res;
23972397
23982398   res = resp[m_respcount++];
2399   if (m_respcount >= sizeof(resp)/sizeof(resp[0])) m_respcount = 0;
2399   if (m_respcount >= ARRAY_LENGTH(resp)) m_respcount = 0;
24002400
24012401//  popmessage("%04x: mcu_r %02x",space.device().safe_pc(),res);
24022402
r29231r29232
24172417   int res;
24182418
24192419   res = resp[m_respcount++];
2420   if (m_respcount >= sizeof(resp)/sizeof(resp[0])) m_respcount = 0;
2420   if (m_respcount >= ARRAY_LENGTH(resp)) m_respcount = 0;
24212421
24222422//  popmessage("%04x: mcu_r %02x",space.device().safe_pc(),res);
24232423
trunk/src/mame/drivers/spcforce.c
r29231r29232
242242{
243243   int i;
244244
245   for (i = 0; i < sizeof(colortable_source) / sizeof(colortable_source[0]); i++)
245   for (i = 0; i < ARRAY_LENGTH(colortable_source); i++)
246246   {
247247      int data = colortable_source[i];
248248      rgb_t color = rgb_t(pal1bit(data >> 0), pal1bit(data >> 1), pal1bit(data >> 2));
r29231r29232
280280   MCFG_SCREEN_PALETTE("palette")
281281
282282   MCFG_GFXDECODE_ADD("gfxdecode", "palette", spcforce)
283   MCFG_PALETTE_ADD("palette", sizeof(colortable_source) / sizeof(colortable_source[0]))
283   MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(colortable_source))
284284   MCFG_PALETTE_INIT_OWNER(spcforce_state, spcforce)
285285
286286   /* sound hardware */
trunk/src/mame/drivers/snowbros.c
r29231r29232
23942394
23952395
23962396
2397//for (i = 0;i < sizeof(cookbib2_mcu68k)/sizeof(cookbib2_mcu68k[0]);i++)
2397//for (i = 0;i < ARRAY_LENGTH(cookbib2_mcu68k);i++)
23982398//      m_hyperpac_ram[0xf000/2 + i] = cookbib2_mcu68k[i];
23992399
24002400//  for (i = 0;i < 0x200/2;i++)
trunk/src/mame/drivers/skydiver.c
r29231r29232
116116{
117117   int i;
118118
119   for (i = 0; i < sizeof(colortable_source) / sizeof(colortable_source[0]); i++)
119   for (i = 0; i < ARRAY_LENGTH(colortable_source); i++)
120120   {
121121      rgb_t color;
122122
r29231r29232
389389   MCFG_SCREEN_PALETTE("palette")
390390
391391   MCFG_GFXDECODE_ADD("gfxdecode", "palette", skydiver)
392   MCFG_PALETTE_ADD("palette", sizeof(colortable_source) / sizeof(colortable_source[0]))
392   MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(colortable_source))
393393   MCFG_PALETTE_INIT_OWNER(skydiver_state, skydiver)
394394
395395
trunk/src/mame/drivers/psikyosh.c
r29231r29232
464464
465465      // HACK: read IPT_START1 from "INPUTS" to avoid listing it twice or having two independent STARTs listed
466466      int start_depressed = ~value & 0x01000000;
467      keys |= start_depressed ? 1 << (sizeof(key_codes)/sizeof(key_codes[0]) - 1) : 0; // and bung it in at the end
467      keys |= start_depressed ? 1 << (ARRAY_LENGTH(key_codes) - 1) : 0; // and bung it in at the end
468468
469469      value |= 0xFFFF0000; // set top word
470470      do {
471471         // since we can't handle multiple keys, just return the first one depressed
472         if((keys & which_key) && (count < sizeof(key_codes)/sizeof(key_codes[0]))) {
472         if((keys & which_key) && (count < ARRAY_LENGTH(key_codes))) {
473473            value &= ~((UINT32)(key_codes[count]) << 16); // mask in selected word as IP_ACTIVE_LOW
474474            break;
475475         }
trunk/src/tools/jedutil.c
r29231r29232
119119    CONSTANTS
120120***************************************************************************/
121121
122#define ARRAY_LEN(_array) (sizeof(_array) / sizeof(_array[0]))
123
124122#define NO_OUTPUT_ENABLE_FUSE_ROW 0xFFFF
125123
126124/* Output pin flags */
r29231r29232
18731871
18741872static pal_data paldata[] = {
18751873   {"PAL10L8", 320,
1876      pal10l8pinfuserows, ARRAY_LEN(pal10l8pinfuserows),
1877      pal10l8pinfusecolumns, ARRAY_LEN(pal10l8pinfusecolumns),
1874      pal10l8pinfuserows, ARRAY_LENGTH(pal10l8pinfuserows),
1875      pal10l8pinfusecolumns, ARRAY_LENGTH(pal10l8pinfusecolumns),
18781876      print_pal10l8_product_terms,
18791877      config_pal10l8_pins,
18801878      NULL,
18811879      NULL},
18821880   {"PAL10H8", 320,
1883      pal10h8pinfuserows, ARRAY_LEN(pal10h8pinfuserows),
1884      pal10h8pinfusecolumns, ARRAY_LEN(pal10h8pinfusecolumns),
1881      pal10h8pinfuserows, ARRAY_LENGTH(pal10h8pinfuserows),
1882      pal10h8pinfusecolumns, ARRAY_LENGTH(pal10h8pinfusecolumns),
18851883      print_pal10h8_product_terms,
18861884      config_pal10h8_pins,
18871885      NULL,
18881886      NULL},
18891887   {"PAL12H6", 384,
1890      pal12h6pinfuserows, ARRAY_LEN(pal12h6pinfuserows),
1891      pal12h6pinfusecolumns, ARRAY_LEN(pal12h6pinfusecolumns),
1888      pal12h6pinfuserows, ARRAY_LENGTH(pal12h6pinfuserows),
1889      pal12h6pinfusecolumns, ARRAY_LENGTH(pal12h6pinfusecolumns),
18921890      print_pal12h6_product_terms,
18931891      config_pal12h6_pins,
18941892      NULL,
18951893      NULL},
18961894   {"PAL14H4", 448,
1897      pal14h4pinfuserows, ARRAY_LEN(pal14h4pinfuserows),
1898      pal14h4pinfusecolumns, ARRAY_LEN(pal14h4pinfusecolumns),
1895      pal14h4pinfuserows, ARRAY_LENGTH(pal14h4pinfuserows),
1896      pal14h4pinfusecolumns, ARRAY_LENGTH(pal14h4pinfusecolumns),
18991897      print_pal14h4_product_terms,
19001898      config_pal14h4_pins,
19011899      NULL,
19021900      NULL},
19031901   {"PAL16H2", 512,
1904      pal16h2pinfuserows, ARRAY_LEN(pal16h2pinfuserows),
1905      pal16h2pinfusecolumns, ARRAY_LEN(pal16h2pinfusecolumns),
1902      pal16h2pinfuserows, ARRAY_LENGTH(pal16h2pinfuserows),
1903      pal16h2pinfusecolumns, ARRAY_LENGTH(pal16h2pinfusecolumns),
19061904      print_pal16h2_product_terms,
19071905      config_pal16h2_pins,
19081906      NULL,
19091907      NULL},
19101908   {"PAL16C1", 512,
1911      pal16c1pinfuserows, ARRAY_LEN(pal16c1pinfuserows),
1912      pal16c1pinfusecolumns, ARRAY_LEN(pal16c1pinfusecolumns),
1909      pal16c1pinfuserows, ARRAY_LENGTH(pal16c1pinfuserows),
1910      pal16c1pinfusecolumns, ARRAY_LENGTH(pal16c1pinfusecolumns),
19131911      print_pal16c1_product_terms,
19141912      config_pal16c1_pins,
19151913      NULL,
19161914      NULL},
19171915   {"PAL12L6", 384,
1918      pal12l6pinfuserows, ARRAY_LEN(pal12l6pinfuserows),
1919      pal12l6pinfusecolumns, ARRAY_LEN(pal12l6pinfusecolumns),
1916      pal12l6pinfuserows, ARRAY_LENGTH(pal12l6pinfuserows),
1917      pal12l6pinfusecolumns, ARRAY_LENGTH(pal12l6pinfusecolumns),
19201918      print_pal12l6_product_terms,
19211919      config_pal12l6_pins,
19221920      NULL,
19231921      NULL},
19241922   {"PAL14L4", 448,
1925      pal14l4pinfuserows, ARRAY_LEN(pal14l4pinfuserows),
1926      pal14l4pinfusecolumns, ARRAY_LEN(pal14l4pinfusecolumns),
1923      pal14l4pinfuserows, ARRAY_LENGTH(pal14l4pinfuserows),
1924      pal14l4pinfusecolumns, ARRAY_LENGTH(pal14l4pinfusecolumns),
19271925      print_pal14l4_product_terms,
19281926      config_pal14l4_pins,
19291927      NULL,
19301928      NULL},
19311929   {"PAL16L2", 512,
1932      pal16l2pinfuserows, ARRAY_LEN(pal16l2pinfuserows),
1933      pal16l2pinfusecolumns, ARRAY_LEN(pal16l2pinfusecolumns),
1930      pal16l2pinfuserows, ARRAY_LENGTH(pal16l2pinfuserows),
1931      pal16l2pinfusecolumns, ARRAY_LENGTH(pal16l2pinfusecolumns),
19341932      print_pal16l2_product_terms,
19351933      config_pal16l2_pins,
19361934      NULL,
19371935      NULL},
19381936   /*{"15S8", 0, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
19391937   {"PAL16L8", 2048,
1940      pal16l8pinfuserows, ARRAY_LEN(pal16l8pinfuserows),
1941      pal16l8pinfusecolumns, ARRAY_LEN(pal16l8pinfusecolumns),
1938      pal16l8pinfuserows, ARRAY_LENGTH(pal16l8pinfuserows),
1939      pal16l8pinfusecolumns, ARRAY_LENGTH(pal16l8pinfusecolumns),
19421940      print_pal16l8_product_terms,
19431941      config_pal16l8_pins,
19441942      NULL,
19451943      NULL},
19461944   {"PAL16R4", 2048,
1947      pal16r4pinfuserows, ARRAY_LEN(pal16r4pinfuserows),
1948      pal16r4pinfusecolumns, ARRAY_LEN(pal16r4pinfusecolumns),
1945      pal16r4pinfuserows, ARRAY_LENGTH(pal16r4pinfuserows),
1946      pal16r4pinfusecolumns, ARRAY_LENGTH(pal16r4pinfusecolumns),
19491947      print_pal16r4_product_terms,
19501948      config_pal16r4_pins,
19511949      NULL,
19521950      NULL},
19531951   {"PAL16R6", 2048,
1954      pal16r6pinfuserows, ARRAY_LEN(pal16r6pinfuserows),
1955      pal16r6pinfusecolumns, ARRAY_LEN(pal16r6pinfusecolumns),
1952      pal16r6pinfuserows, ARRAY_LENGTH(pal16r6pinfuserows),
1953      pal16r6pinfusecolumns, ARRAY_LENGTH(pal16r6pinfusecolumns),
19561954      print_pal16r6_product_terms,
19571955      config_pal16r6_pins,
19581956      NULL,
19591957      NULL},
19601958   {"PAL16R8", 2048,
1961      pal16r8pinfuserows, ARRAY_LEN(pal16r8pinfuserows),
1962      pal16r8pinfusecolumns, ARRAY_LEN(pal16r8pinfusecolumns),
1959      pal16r8pinfuserows, ARRAY_LENGTH(pal16r8pinfuserows),
1960      pal16r8pinfusecolumns, ARRAY_LENGTH(pal16r8pinfusecolumns),
19631961      print_pal16r8_product_terms,
19641962      config_pal16r8_pins,
19651963      NULL,
r29231r29232
19671965   /*{"PAL16RA8", 0, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
19681966   {"PAL16V8R", 0, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
19691967   {"PALCE16V8", 2194,
1970      palce16v8pinfuserows, ARRAY_LEN(palce16v8pinfuserows),
1971      palce16v8pinfusecolumns, ARRAY_LEN(palce16v8pinfusecolumns),
1968      palce16v8pinfuserows, ARRAY_LENGTH(palce16v8pinfuserows),
1969      palce16v8pinfusecolumns, ARRAY_LENGTH(palce16v8pinfusecolumns),
19721970      print_palce16v8_product_terms,
19731971      config_palce16v8_pins,
19741972      NULL,
19751973      NULL},
19761974   {"GAL16V8", 2194,
1977      gal16v8pinfuserows, ARRAY_LEN(gal16v8pinfuserows),
1978      gal16v8pinfusecolumns, ARRAY_LEN(gal16v8pinfusecolumns),
1975      gal16v8pinfuserows, ARRAY_LENGTH(gal16v8pinfuserows),
1976      gal16v8pinfusecolumns, ARRAY_LENGTH(gal16v8pinfusecolumns),
19791977      print_gal16v8_product_terms,
19801978      config_gal16v8_pins,
19811979      is_gal16v8_product_term_enabled,
19821980      NULL},
19831981   {"18CV8", 2696,
1984      peel18cv8pinfuserows, ARRAY_LEN(peel18cv8pinfuserows),
1985      peel18cv8pinfusecolumns, ARRAY_LEN(peel18cv8pinfusecolumns),
1982      peel18cv8pinfuserows, ARRAY_LENGTH(peel18cv8pinfuserows),
1983      peel18cv8pinfusecolumns, ARRAY_LENGTH(peel18cv8pinfusecolumns),
19861984      print_peel18cv8_product_terms,
19871985      config_peel18cv8_pins,
19881986      NULL,
19891987      get_peel18cv8_pin_fuse_state},
19901988   {"GAL18V10", 3540,
1991      gal18v10pinfuserows, ARRAY_LEN(gal18v10pinfuserows),
1992      gal18v10pinfusecolumns, ARRAY_LEN(gal18v10pinfusecolumns),
1989      gal18v10pinfuserows, ARRAY_LENGTH(gal18v10pinfuserows),
1990      gal18v10pinfusecolumns, ARRAY_LENGTH(gal18v10pinfusecolumns),
19931991      print_gal18v10_product_terms,
19941992      config_gal18v10_pins,
19951993      NULL,
19961994      NULL},
19971995   {"PAL20L8", 2560,
1998      pal20l8pinfuserows, ARRAY_LEN(pal20l8pinfuserows),
1999      pal20l8pinfusecolumns, ARRAY_LEN(pal20l8pinfusecolumns),
1996      pal20l8pinfuserows, ARRAY_LENGTH(pal20l8pinfuserows),
1997      pal20l8pinfusecolumns, ARRAY_LENGTH(pal20l8pinfusecolumns),
20001998      print_pal20l8_product_terms,
20011999      config_pal20l8_pins,
20022000      NULL,
20032001      NULL},
20042002   {"PAL20L10", 1600,
2005      pal20l10pinfuserows, ARRAY_LEN(pal20l10pinfuserows),
2006      pal20l10pinfusecolumns, ARRAY_LEN(pal20l10pinfusecolumns),
2003      pal20l10pinfuserows, ARRAY_LENGTH(pal20l10pinfuserows),
2004      pal20l10pinfusecolumns, ARRAY_LENGTH(pal20l10pinfusecolumns),
20072005      print_pal20l10_product_terms,
20082006      config_pal20l10_pins,
20092007      NULL,
20102008      NULL},
20112009   {"PAL20R4", 2560,
2012      pal20r4pinfuserows, ARRAY_LEN(pal20r4pinfuserows),
2013      pal20r4pinfusecolumns, ARRAY_LEN(pal20r4pinfusecolumns),
2010      pal20r4pinfuserows, ARRAY_LENGTH(pal20r4pinfuserows),
2011      pal20r4pinfusecolumns, ARRAY_LENGTH(pal20r4pinfusecolumns),
20142012      print_pal20r4_product_terms,
20152013      config_pal20r4_pins,
20162014      NULL,
20172015      NULL},
20182016   {"PAL20R6", 2560,
2019      pal20r6pinfuserows, ARRAY_LEN(pal20r6pinfuserows),
2020      pal20r6pinfusecolumns, ARRAY_LEN(pal20r6pinfusecolumns),
2017      pal20r6pinfuserows, ARRAY_LENGTH(pal20r6pinfuserows),
2018      pal20r6pinfusecolumns, ARRAY_LENGTH(pal20r6pinfusecolumns),
20212019      print_pal20r6_product_terms,
20222020      config_pal20r6_pins,
20232021      NULL,
20242022      NULL},
20252023   {"PAL20R8", 2560,
2026      pal20r8pinfuserows, ARRAY_LEN(pal20r8pinfuserows),
2027      pal20r8pinfusecolumns, ARRAY_LEN(pal20r8pinfusecolumns),
2024      pal20r8pinfuserows, ARRAY_LENGTH(pal20r8pinfuserows),
2025      pal20r8pinfusecolumns, ARRAY_LENGTH(pal20r8pinfusecolumns),
20282026      print_pal20r8_product_terms,
20292027      config_pal20r8_pins,
20302028      NULL,
20312029      NULL},
20322030   {"PAL20X4", 1600,
2033      pal20x4pinfuserows, ARRAY_LEN(pal20x4pinfuserows),
2034      pal20x4pinfusecolumns, ARRAY_LEN(pal20x4pinfusecolumns),
2031      pal20x4pinfuserows, ARRAY_LENGTH(pal20x4pinfuserows),
2032      pal20x4pinfusecolumns, ARRAY_LENGTH(pal20x4pinfusecolumns),
20352033      print_pal20x4_product_terms,
20362034      config_pal20x4_pins,
20372035      NULL,
20382036      NULL},
20392037   {"PAL20X8", 1600,
2040      pal20x8pinfuserows, ARRAY_LEN(pal20x8pinfuserows),
2041      pal20x8pinfusecolumns, ARRAY_LEN(pal20x8pinfusecolumns),
2038      pal20x8pinfuserows, ARRAY_LENGTH(pal20x8pinfuserows),
2039      pal20x8pinfusecolumns, ARRAY_LENGTH(pal20x8pinfusecolumns),
20422040      print_pal20x8_product_terms,
20432041      config_pal20x8_pins,
20442042      NULL,
20452043      NULL},
20462044   {"PAL20X10", 1600,
2047      pal20x10pinfuserows, ARRAY_LEN(pal20x10pinfuserows),
2048      pal20x10pinfusecolumns, ARRAY_LEN(pal20x10pinfusecolumns),
2045      pal20x10pinfuserows, ARRAY_LENGTH(pal20x10pinfuserows),
2046      pal20x10pinfusecolumns, ARRAY_LENGTH(pal20x10pinfusecolumns),
20492047      print_pal20x10_product_terms,
20502048      config_pal20x10_pins,
20512049      NULL,
r29231r29232
20552053   {"GAL22V10", 0, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
20562054   {"PLS100", 0, NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
20572055   {"82S153", 1842,
2058      _82s153_pls153pinfuserows, ARRAY_LEN(_82s153_pls153pinfuserows),
2059      _82s153_pls153pinfusecolumns, ARRAY_LEN(_82s153_pls153pinfusecolumns),
2056      _82s153_pls153pinfuserows, ARRAY_LENGTH(_82s153_pls153pinfuserows),
2057      _82s153_pls153pinfusecolumns, ARRAY_LENGTH(_82s153_pls153pinfusecolumns),
20602058      print_82s153_pls153_product_terms,
20612059      config_82s153_pls153_pins,
20622060      NULL,
20632061      NULL},
20642062   {"PLS153", 1842,
2065      _82s153_pls153pinfuserows, ARRAY_LEN(_82s153_pls153pinfuserows),
2066      _82s153_pls153pinfusecolumns, ARRAY_LEN(_82s153_pls153pinfusecolumns),
2063      _82s153_pls153pinfuserows, ARRAY_LENGTH(_82s153_pls153pinfuserows),
2064      _82s153_pls153pinfusecolumns, ARRAY_LENGTH(_82s153_pls153pinfusecolumns),
20672065      print_82s153_pls153_product_terms,
20682066      config_82s153_pls153_pins,
20692067      NULL,
20702068      NULL},
20712069   {"CK2605", 1106,
2072      ck2605pinfuserows, ARRAY_LEN(ck2605pinfuserows),
2073      ck2605pinfusecolumns, ARRAY_LEN(ck2605pinfusecolumns),
2070      ck2605pinfuserows, ARRAY_LENGTH(ck2605pinfuserows),
2071      ck2605pinfusecolumns, ARRAY_LENGTH(ck2605pinfusecolumns),
20742072      print_ck2605_product_terms,
20752073      config_ck2605_pins,
20762074      NULL,
20772075      NULL},
20782076#if defined(ricoh_pals)
20792077   {"EPL10P8", 664,
2080      epl10p8pinfuserows, ARRAY_LEN(epl10p8pinfuserows),
2081      epl10p8pinfusecolumns, ARRAY_LEN(epl10p8pinfusecolumns),
2078      epl10p8pinfuserows, ARRAY_LENGTH(epl10p8pinfuserows),
2079      epl10p8pinfusecolumns, ARRAY_LENGTH(epl10p8pinfusecolumns),
20822080      print_epl10p8_product_terms,
20832081      config_epl10p8_pins,
20842082      NULL,
20852083      NULL},
20862084   {"EPL12P6", 786,
2087      epl12p6pinfuserows, ARRAY_LEN(epl12p6pinfuserows),
2088      epl12p6pinfusecolumns, ARRAY_LEN(epl12p6pinfusecolumns),
2085      epl12p6pinfuserows, ARRAY_LENGTH(epl12p6pinfuserows),
2086      epl12p6pinfusecolumns, ARRAY_LENGTH(epl12p6pinfusecolumns),
20892087      print_epl12p6_product_terms,
20902088      config_epl12p6_pins,
20912089      NULL,
20922090      NULL},
20932091   {"EPL14P4", 908,
2094      epl14p4pinfuserows, ARRAY_LEN(epl14p4pinfuserows),
2095      epl14p4pinfusecolumns, ARRAY_LEN(epl14p4pinfusecolumns),
2092      epl14p4pinfuserows, ARRAY_LENGTH(epl14p4pinfuserows),
2093      epl14p4pinfusecolumns, ARRAY_LENGTH(epl14p4pinfusecolumns),
20962094      print_epl14p4_product_terms,
20972095      config_epl14p4_pins,
20982096      NULL,
20992097      NULL},
21002098   {"EPL16P2", 1030,
2101      epl16p2pinfuserows, ARRAY_LEN(epl16p2pinfuserows),
2102      epl16p2pinfusecolumns, ARRAY_LEN(epl16p2pinfusecolumns),
2099      epl16p2pinfuserows, ARRAY_LENGTH(epl16p2pinfuserows),
2100      epl16p2pinfusecolumns, ARRAY_LENGTH(epl16p2pinfusecolumns),
21032101      print_epl16p2_product_terms,
21042102      config_epl16p2_pins,
21052103      NULL,
21062104      NULL},
21072105   {"EPL16P8", 2072,
2108      epl16p8pinfuserows, ARRAY_LEN(epl16p8pinfuserows),
2109      epl16p8pinfusecolumns, ARRAY_LEN(epl16p8pinfusecolumns),
2106      epl16p8pinfuserows, ARRAY_LENGTH(epl16p8pinfuserows),
2107      epl16p8pinfusecolumns, ARRAY_LENGTH(epl16p8pinfusecolumns),
21102108      print_epl16p8_product_terms,
21112109      config_epl16p8_pins,
21122110      NULL,
21132111      NULL},
21142112   {"EPL16RP8", 2072,
2115      epl16rp8pinfuserows, ARRAY_LEN(epl16rp8pinfuserows),
2116      epl16rp8pinfusecolumns, ARRAY_LEN(epl16rp8pinfusecolumns),
2113      epl16rp8pinfuserows, ARRAY_LENGTH(epl16rp8pinfuserows),
2114      epl16rp8pinfusecolumns, ARRAY_LENGTH(epl16rp8pinfusecolumns),
21172115      print_epl16rp8_product_terms,
21182116      config_epl16rp8_pins,
21192117      NULL,
21202118      NULL},
21212119   {"EPL16RP6", 2072,
2122      epl16rp6pinfuserows, ARRAY_LEN(epl16rp6pinfuserows),
2123      epl16rp6pinfusecolumns, ARRAY_LEN(epl16rp6pinfusecolumns),
2120      epl16rp6pinfuserows, ARRAY_LENGTH(epl16rp6pinfuserows),
2121      epl16rp6pinfusecolumns, ARRAY_LENGTH(epl16rp6pinfusecolumns),
21242122      print_epl16rp6_product_terms,
21252123      config_epl16rp6_pins,
21262124      NULL,
21272125      NULL},
21282126   {"EPL16RP4", 2072,
2129      epl16rp4pinfuserows, ARRAY_LEN(epl16rp4pinfuserows),
2130      epl16rp4pinfusecolumns, ARRAY_LEN(epl16rp4pinfusecolumns),
2127      epl16rp4pinfuserows, ARRAY_LENGTH(epl16rp4pinfuserows),
2128      epl16rp4pinfusecolumns, ARRAY_LENGTH(epl16rp4pinfusecolumns),
21312129      print_epl16rp4_product_terms,
21322130      config_epl16rp4_pins,
21332131      NULL,
21342132      NULL},
21352133#endif
21362134   {"PAL10P8", 328,
2137      pal10p8pinfuserows, ARRAY_LEN(pal10p8pinfuserows),
2138      pal10p8pinfusecolumns, ARRAY_LEN(pal10p8pinfusecolumns),
2135      pal10p8pinfuserows, ARRAY_LENGTH(pal10p8pinfuserows),
2136      pal10p8pinfusecolumns, ARRAY_LENGTH(pal10p8pinfusecolumns),
21392137      print_pal10p8_product_terms,
21402138      config_pal10p8_pins,
21412139      NULL,
21422140      NULL},
21432141   {"PAL12P6", 390,
2144      pal12p6pinfuserows, ARRAY_LEN(pal12p6pinfuserows),
2145      pal12p6pinfusecolumns, ARRAY_LEN(pal12p6pinfusecolumns),
2142      pal12p6pinfuserows, ARRAY_LENGTH(pal12p6pinfuserows),
2143      pal12p6pinfusecolumns, ARRAY_LENGTH(pal12p6pinfusecolumns),
21462144      print_pal12p6_product_terms,
21472145      config_pal12p6_pins,
21482146      NULL,
21492147      NULL},
21502148   {"PAL14P4", 452,
2151      pal14p4pinfuserows, ARRAY_LEN(pal14p4pinfuserows),
2152      pal14p4pinfusecolumns, ARRAY_LEN(pal14p4pinfusecolumns),
2149      pal14p4pinfuserows, ARRAY_LENGTH(pal14p4pinfuserows),
2150      pal14p4pinfusecolumns, ARRAY_LENGTH(pal14p4pinfusecolumns),
21532151      print_pal14p4_product_terms,
21542152      config_pal14p4_pins,
21552153      NULL,
21562154      NULL},
21572155   {"PAL16P2", 514,
2158      pal16p2pinfuserows, ARRAY_LEN(pal16p2pinfuserows),
2159      pal16p2pinfusecolumns, ARRAY_LEN(pal16p2pinfusecolumns),
2156      pal16p2pinfuserows, ARRAY_LENGTH(pal16p2pinfuserows),
2157      pal16p2pinfusecolumns, ARRAY_LENGTH(pal16p2pinfusecolumns),
21602158      print_pal16p2_product_terms,
21612159      config_pal16p2_pins,
21622160      NULL,
21632161      NULL},
21642162   {"PAL16P8", 2056,
2165      pal16p8pinfuserows, ARRAY_LEN(pal16p8pinfuserows),
2166      pal16p8pinfusecolumns, ARRAY_LEN(pal16p8pinfusecolumns),
2163      pal16p8pinfuserows, ARRAY_LENGTH(pal16p8pinfuserows),
2164      pal16p8pinfusecolumns, ARRAY_LENGTH(pal16p8pinfusecolumns),
21672165      print_pal16p8_product_terms,
21682166      config_pal16p8_pins,
21692167      NULL,
21702168      NULL},
21712169   {"PAL16RP4", 2056,
2172      pal16rp4pinfuserows, ARRAY_LEN(pal16rp4pinfuserows),
2173      pal16rp4pinfusecolumns, ARRAY_LEN(pal16rp4pinfusecolumns),
2170      pal16rp4pinfuserows, ARRAY_LENGTH(pal16rp4pinfuserows),
2171      pal16rp4pinfusecolumns, ARRAY_LENGTH(pal16rp4pinfusecolumns),
21742172      print_pal16rp4_product_terms,
21752173      config_pal16rp4_pins,
21762174      NULL,
21772175      NULL},
21782176   {"PAL16RP6", 2056,
2179      pal16rp6pinfuserows, ARRAY_LEN(pal16rp6pinfuserows),
2180      pal16rp6pinfusecolumns, ARRAY_LEN(pal16rp6pinfusecolumns),
2177      pal16rp6pinfuserows, ARRAY_LENGTH(pal16rp6pinfuserows),
2178      pal16rp6pinfusecolumns, ARRAY_LENGTH(pal16rp6pinfusecolumns),
21812179      print_pal16rp6_product_terms,
21822180      config_pal16rp6_pins,
21832181      NULL,
21842182      NULL},
21852183   {"PAL16RP8", 2056,
2186      pal16rp8pinfuserows, ARRAY_LEN(pal16rp8pinfuserows),
2187      pal16rp8pinfusecolumns, ARRAY_LEN(pal16rp8pinfusecolumns),
2184      pal16rp8pinfuserows, ARRAY_LENGTH(pal16rp8pinfuserows),
2185      pal16rp8pinfusecolumns, ARRAY_LENGTH(pal16rp8pinfusecolumns),
21882186      print_pal16rp8_product_terms,
21892187      config_pal16rp8_pins,
21902188      NULL,
21912189      NULL},
21922190   {"PAL6L16", 192,
2193      pal6l16pinfuserows, ARRAY_LEN(pal6l16pinfuserows),
2194      pal6l16pinfusecolumns, ARRAY_LEN(pal6l16pinfusecolumns),
2191      pal6l16pinfuserows, ARRAY_LENGTH(pal6l16pinfuserows),
2192      pal6l16pinfusecolumns, ARRAY_LENGTH(pal6l16pinfusecolumns),
21952193      print_pal6l16_product_terms,
21962194      config_pal6l16_pins,
21972195      NULL,
21982196      NULL},
21992197   {"PAL8L14", 224,
2200      pal8l14pinfuserows, ARRAY_LEN(pal8l14pinfuserows),
2201      pal8l14pinfusecolumns, ARRAY_LEN(pal8l14pinfusecolumns),
2198      pal8l14pinfuserows, ARRAY_LENGTH(pal8l14pinfuserows),
2199      pal8l14pinfusecolumns, ARRAY_LENGTH(pal8l14pinfusecolumns),
22022200      print_pal8l14_product_terms,
22032201      config_pal8l14_pins,
22042202      NULL,
22052203      NULL},
22062204   {"PAL12H10", 480,
2207      pal12h10pinfuserows, ARRAY_LEN(pal12h10pinfuserows),
2208      pal12h10pinfusecolumns, ARRAY_LEN(pal12h10pinfusecolumns),
2205      pal12h10pinfuserows, ARRAY_LENGTH(pal12h10pinfuserows),
2206      pal12h10pinfusecolumns, ARRAY_LENGTH(pal12h10pinfusecolumns),
22092207      print_pal12h10_product_terms,
22102208      config_pal12h10_pins,
22112209      NULL,
22122210      NULL},
22132211   {"PAL12L10", 480,
2214      pal12l10pinfuserows, ARRAY_LEN(pal12l10pinfuserows),
2215      pal12l10pinfusecolumns, ARRAY_LEN(pal12l10pinfusecolumns),
2212      pal12l10pinfuserows, ARRAY_LENGTH(pal12l10pinfuserows),
2213      pal12l10pinfusecolumns, ARRAY_LENGTH(pal12l10pinfusecolumns),
22162214      print_pal12l10_product_terms,
22172215      config_pal12l10_pins,
22182216      NULL,
22192217      NULL},
22202218   {"PAL14H8", 560,
2221      pal14h8pinfuserows, ARRAY_LEN(pal14h8pinfuserows),
2222      pal14h8pinfusecolumns, ARRAY_LEN(pal14h8pinfusecolumns),
2219      pal14h8pinfuserows, ARRAY_LENGTH(pal14h8pinfuserows),
2220      pal14h8pinfusecolumns, ARRAY_LENGTH(pal14h8pinfusecolumns),
22232221      print_pal14h8_product_terms,
22242222      config_pal14h8_pins,
22252223      NULL,
22262224      NULL},
22272225   {"PAL14L8", 560,
2228      pal14l8pinfuserows, ARRAY_LEN(pal14l8pinfuserows),
2229      pal14l8pinfusecolumns, ARRAY_LEN(pal14l8pinfusecolumns),
2226      pal14l8pinfuserows, ARRAY_LENGTH(pal14l8pinfuserows),
2227      pal14l8pinfusecolumns, ARRAY_LENGTH(pal14l8pinfusecolumns),
22302228      print_pal14l8_product_terms,
22312229      config_pal14l8_pins,
22322230      NULL,
22332231      NULL},
22342232   {"PAL16H6", 640,
2235      pal16h6pinfuserows, ARRAY_LEN(pal16h6pinfuserows),
2236      pal16h6pinfusecolumns, ARRAY_LEN(pal16h6pinfusecolumns),
2233      pal16h6pinfuserows, ARRAY_LENGTH(pal16h6pinfuserows),
2234      pal16h6pinfusecolumns, ARRAY_LENGTH(pal16h6pinfusecolumns),
22372235      print_pal16h6_product_terms,
22382236      config_pal16h6_pins,
22392237      NULL,
22402238      NULL},
22412239   {"PAL16L6", 640,
2242      pal16l6pinfuserows, ARRAY_LEN(pal16l6pinfuserows),
2243      pal16l6pinfusecolumns, ARRAY_LEN(pal16l6pinfusecolumns),
2240      pal16l6pinfuserows, ARRAY_LENGTH(pal16l6pinfuserows),
2241      pal16l6pinfusecolumns, ARRAY_LENGTH(pal16l6pinfusecolumns),
22442242      print_pal16l6_product_terms,
22452243      config_pal16l6_pins,
22462244      NULL,
22472245      NULL},
22482246   {"PAL18H4", 720,
2249      pal18h4pinfuserows, ARRAY_LEN(pal18h4pinfuserows),
2250      pal18h4pinfusecolumns, ARRAY_LEN(pal18h4pinfusecolumns),
2247      pal18h4pinfuserows, ARRAY_LENGTH(pal18h4pinfuserows),
2248      pal18h4pinfusecolumns, ARRAY_LENGTH(pal18h4pinfusecolumns),
22512249      print_pal18h4_product_terms,
22522250      config_pal18h4_pins,
22532251      NULL,
22542252      NULL},
22552253   {"PAL18L4", 720,
2256      pal18l4pinfuserows, ARRAY_LEN(pal18l4pinfuserows),
2257      pal18l4pinfusecolumns, ARRAY_LEN(pal18l4pinfusecolumns),
2254      pal18l4pinfuserows, ARRAY_LENGTH(pal18l4pinfuserows),
2255      pal18l4pinfusecolumns, ARRAY_LENGTH(pal18l4pinfusecolumns),
22582256      print_pal18l4_product_terms,
22592257      config_pal18l4_pins,
22602258      NULL,
22612259      NULL},
22622260   {"PAL20C1", 640,
2263      pal20c1pinfuserows, ARRAY_LEN(pal20c1pinfuserows),
2264      pal20c1pinfusecolumns, ARRAY_LEN(pal20c1pinfusecolumns),
2261      pal20c1pinfuserows, ARRAY_LENGTH(pal20c1pinfuserows),
2262      pal20c1pinfusecolumns, ARRAY_LENGTH(pal20c1pinfusecolumns),
22652263      print_pal20c1_product_terms,
22662264      config_pal20c1_pins,
22672265      NULL,
22682266      NULL},
22692267   {"PAL20L2", 640,
2270      pal20l2pinfuserows, ARRAY_LEN(pal20l2pinfuserows),
2271      pal20l2pinfusecolumns, ARRAY_LEN(pal20l2pinfusecolumns),
2268      pal20l2pinfuserows, ARRAY_LENGTH(pal20l2pinfuserows),
2269      pal20l2pinfusecolumns, ARRAY_LENGTH(pal20l2pinfusecolumns),
22722270      print_pal20l2_product_terms,
22732271      config_pal20l2_pins,
22742272      NULL,
r29231r29232
23272325{
23282326   int index;
23292327
2330   for (index = 0; index < ARRAY_LEN(paldata); ++index)
2328   for (index = 0; index < ARRAY_LENGTH(paldata); ++index)
23312329   {
23322330      if (!core_stricmp(name, paldata[index].name))
23332331      {
r29231r29232
29872985      {19, 0, 32, 224}};
29882986   UINT16 index;
29892987
2990   for (index = 0; index < ARRAY_LEN(pinfuserows); ++index)
2988   for (index = 0; index < ARRAY_LENGTH(pinfuserows); ++index)
29912989   {
29922990      if (pinfuserows[index].pin == pin)
29932991      {
r29231r29232
30213019      {19, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 224}};
30223020   UINT16 index;
30233021
3024   for (index = 0; index < ARRAY_LEN(pinfuserows); ++index)
3022   for (index = 0; index < ARRAY_LENGTH(pinfuserows); ++index)
30253023   {
30263024      if (pinfuserows[index].pin == pin)
30273025      {
r29231r29232
37873785
37883786   printf("Equations:\n\n");
37893787
3790   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
3788   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
37913789   {
37923790      flags = outputpins[index].flags;
37933791
r29231r29232
42464244      {18, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
42474245      {19, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
42484246
4249   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4250   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4247   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4248   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
42514249}
42524250
42534251
r29231r29232
42704268      {18, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
42714269      {19, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
42724270
4273   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4274   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4271   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4272   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
42754273}
42764274
42774275
r29231r29232
42924290      {17, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
42934291      {18, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
42944292
4295   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4296   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4293   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4294   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
42974295}
42984296
42994297
r29231r29232
43144312      {17, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
43154313      {18, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
43164314
4317   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4318   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4315   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4316   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
43194317}
43204318
43214319
r29231r29232
43344332      {16, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
43354333      {17, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
43364334
4337   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4338   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4335   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4336   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
43394337}
43404338
43414339
r29231r29232
43544352      {16, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
43554353      {17, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
43564354
4357   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4358   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4355   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4356   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
43594357}
43604358
43614359
r29231r29232
43724370      {15, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
43734371      {16, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
43744372
4375   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4376   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4373   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4374   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
43774375}
43784376
43794377
r29231r29232
43904388      {15, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
43914389      {16, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
43924390
4393   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4394   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4391   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4392   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
43954393}
43964394
43974395
r29231r29232
44084406      {15, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
44094407      {16, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
44104408
4411   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4412   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4409   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4410   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
44134411}
44144412
44154413
r29231r29232
44384436      }
44394437   }
44404438
4441   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4439   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
44424440   set_output_pins(output_pins, output_pin_count);
44434441}
44444442
r29231r29232
44744472      ++output_pin_count;
44754473   }
44764474
4477   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
4475   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
44784476   {
44794477      output_pins[output_pin_count].pin = registered_pins[index];
44804478      output_pins[output_pin_count].flags = OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
44984496      ++output_pin_count;
44994497   }
45004498
4501   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4499   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
45024500   set_output_pins(output_pins, output_pin_count);
45034501}
45044502
r29231r29232
45264524      ++output_pin_count;
45274525   }
45284526
4529   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
4527   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
45304528   {
45314529      output_pins[output_pin_count].pin = registered_pins[index];
45324530      output_pins[output_pin_count].flags = OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
45424540      ++output_pin_count;
45434541   }
45444542
4545   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4543   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
45464544   set_output_pins(output_pins, output_pin_count);
45474545}
45484546
r29231r29232
45664564      {18, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED},
45674565      {19, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED}};
45684566
4569   set_input_pins(input_pins, ARRAY_LEN(input_pins));
4570   set_output_pins(output_pins, ARRAY_LEN(output_pins));
4567   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
4568   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
45714569}
45724570
45734571
r29231r29232
46544652   static UINT16 sg0 = 2192;
46554653   static UINT16 sg1 = 2193;
46564654   UINT16 input_pins[18];
4657   pin_output_config output_pins[ARRAY_LEN(macrocells)];
4655   pin_output_config output_pins[ARRAY_LENGTH(macrocells)];
46584656   UINT16 index, input_pin_count, output_pin_count;
46594657
46604658   input_pin_count = 0;
r29231r29232
46704668
46714669         memcpy(input_pins, input_pins_regs, sizeof(input_pins_regs));
46724670
4673         input_pin_count = ARRAY_LEN(input_pins_regs);
4671         input_pin_count = ARRAY_LENGTH(input_pins_regs);
46744672
4675         for (index = 0; index < ARRAY_LEN(macrocells); ++index)
4673         for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
46764674         {
46774675            if (!jed_get_fuse(jed, macrocells[index].sl0_fuse))
46784676            {
r29231r29232
47444742
47454743         memcpy(input_pins, input_pins_io, sizeof(input_pins_io));
47464744
4747         input_pin_count = ARRAY_LEN(input_pins_io);
4745         input_pin_count = ARRAY_LENGTH(input_pins_io);
47484746
4749         for (index = 0; index < ARRAY_LEN(macrocells); ++index)
4747         for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
47504748         {
47514749            if (does_output_enable_fuse_row_allow_output(pal, jed, macrocells[index].fuserowoutputenable))
47524750            {
r29231r29232
47854783
47864784         memcpy(input_pins, input_pins_i_or_o, sizeof(input_pins_i_or_o));
47874785
4788         input_pin_count = ARRAY_LEN(input_pins_i_or_o);
4786         input_pin_count = ARRAY_LENGTH(input_pins_i_or_o);
47894787
4790         for (index = 0; index < ARRAY_LEN(macrocells); ++index)
4788         for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
47914789         {
47924790            if (!jed_get_fuse(jed, macrocells[index].sl0_fuse))
47934791            {
r29231r29232
49344932   static UINT16 input_pins_registered[] = {2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19};
49354933   static UINT16 input_pins_combinatorialcomplex[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18};
49364934   static UINT16 input_pins_combinatorialsimple[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 17, 18, 19};
4937   pin_output_config output_pins[ARRAY_LEN(macrocells)];
4935   pin_output_config output_pins[ARRAY_LENGTH(macrocells)];
49384936   UINT16 index, output_pin_count;
49394937
49404938   output_pin_count = 0;
r29231r29232
49504948      {
49514949         /* Complex Mode */
49524950
4953         set_input_pins(input_pins_combinatorialcomplex, ARRAY_LEN(input_pins_combinatorialcomplex));
4951         set_input_pins(input_pins_combinatorialcomplex, ARRAY_LENGTH(input_pins_combinatorialcomplex));
49544952
49554953         memcpy(gal16v8pinfuserows, pinfuserows_combinatorial, sizeof(pinfuserows_combinatorial));
49564954         memcpy(gal16v8pinfusecolumns, pinfusecolumns_combinatorialcomplex, sizeof(pinfusecolumns_combinatorialcomplex));
49574955
4958         for (index = 0; index < ARRAY_LEN(macrocells); ++index)
4956         for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
49594957         {
49604958            if (is_gal16v8_product_term_enabled(pal, jed, pal->pinfuserows[index].fuserowoutputenable) &&
49614959               does_output_enable_fuse_row_allow_output(pal, jed, pal->pinfuserows[index].fuserowoutputenable))
r29231r29232
49904988      {
49914989         /* Simple Mode */
49924990
4993         set_input_pins(input_pins_combinatorialsimple, ARRAY_LEN(input_pins_combinatorialsimple));
4991         set_input_pins(input_pins_combinatorialsimple, ARRAY_LENGTH(input_pins_combinatorialsimple));
49944992
49954993         memcpy(gal16v8pinfuserows, pinfuserows_registered, sizeof(pinfuserows_registered));
49964994         memcpy(gal16v8pinfusecolumns, pinfusecolumns_combinatorialsimple, sizeof(pinfusecolumns_combinatorialsimple));
49974995
4998         for (index = 0; index < ARRAY_LEN(macrocells); ++index)
4996         for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
49994997         {
50004998            if (jed_get_fuse(jed, macrocells[index].ac1_fuse))
50014999            {
r29231r29232
50405038   {
50415039      /* Registered */
50425040
5043      set_input_pins(input_pins_registered, ARRAY_LEN(input_pins_registered));
5041      set_input_pins(input_pins_registered, ARRAY_LENGTH(input_pins_registered));
50445042
50455043      memcpy(gal16v8pinfusecolumns, pinfusecolumns_registered, sizeof(pinfusecolumns_registered));
50465044
5047      for (index = 0; index < ARRAY_LEN(macrocells); ++index)
5045      for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
50485046      {
50495047         if (jed_get_fuse(jed, macrocells[index].ac1_fuse))
50505048         {
r29231r29232
51295127      {18, 2668, 2669, 2670, 2671},
51305128      {19, 2664, 2665, 2666, 2667}};
51315129   static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19};
5132   pin_output_config output_pins[ARRAY_LEN(macrocells)];
5130   pin_output_config output_pins[ARRAY_LENGTH(macrocells)];
51335131   UINT16 index, output_pin_count;
51345132
5135   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5133   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
51365134
51375135   output_pin_count = 0;
51385136
5139   for (index = 0; index < ARRAY_LEN(macrocells); ++index)
5137   for (index = 0; index < ARRAY_LENGTH(macrocells); ++index)
51405138   {
51415139      if (jed_get_fuse(jed, macrocells[index].feedback1_fuse) &&
51425140         !jed_get_fuse(jed, macrocells[index].feedback2_fuse))
r29231r29232
52675265      {18, 3458, 3459},
52685266      {19, 3456, 3457}};
52695267   static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19};
5270   pin_output_config output_pins[ARRAY_LEN(macrocells)];
5268   pin_output_config output_pins[ARRAY_LENGTH(macrocells)];
52715269   UINT16 index, output_pin_count;
52725270
52735271   output_pin_count = 0;
52745272
5275   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
5273   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
52765274   {
52775275      if (jed_get_fuse(jed, macrocells[index].s1_fuse))
52785276      {
r29231r29232
53155313      }
53165314   }
53175315
5318   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5316   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
53195317   set_output_pins(output_pins, output_pin_count);
53205318}
53215319
r29231r29232
53555353      }
53565354   }
53575355
5358   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5356   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
53595357   set_output_pins(output_pins, output_pin_count);
53605358}
53615359
r29231r29232
53955393      }
53965394   }
53975395
5398   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5396   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
53995397   set_output_pins(output_pins, output_pin_count);
54005398}
54015399
r29231r29232
54315429      ++output_pin_count;
54325430   }
54335431
5434   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
5432   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
54355433   {
54365434      output_pins[output_pin_count].pin = registered_pins[index];
54375435      output_pins[output_pin_count].flags = OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
54555453      ++output_pin_count;
54565454   }
54575455
5458   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5456   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
54595457   set_output_pins(output_pins, output_pin_count);
54605458}
54615459
r29231r29232
54835481      ++output_pin_count;
54845482   }
54855483
5486   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
5484   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
54875485   {
54885486      output_pins[output_pin_count].pin = registered_pins[index];
54895487      output_pins[output_pin_count].flags = OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
54995497      ++output_pin_count;
55005498   }
55015499
5502   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5500   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
55035501   set_output_pins(output_pins, output_pin_count);
55045502}
55055503
r29231r29232
55235521      {21, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED},
55245522      {22, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED}};
55255523
5526   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5527   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5524   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5525   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
55285526}
55295527
55305528
r29231r29232
55495547      {22, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_OUTPUT},
55505548      {23, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_OUTPUT}};
55515549
5552   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5553   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5550   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5551   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
55545552}
55555553
55565554/*-------------------------------------------------
r29231r29232
55735571      {22, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED},
55745572      {23, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_OUTPUT}};
55755573
5576   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5577   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5574   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5575   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
55785576}
55795577
55805578
r29231r29232
55995597      {22, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED},
56005598      {23, OUTPUT_ACTIVELOW | OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED}};
56015599
5602   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5603   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5600   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5601   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
56045602}
56055603
56065604
r29231r29232
56385636      }
56395637   }
56405638
5641   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5639   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
56425640   set_output_pins(output_pins, output_pin_count);
56435641}
56445642
r29231r29232
56775675      }
56785676   }
56795677
5680   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5678   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
56815679   set_output_pins(output_pins, output_pin_count);
56825680}
56835681
r29231r29232
57115709   pin_output_config output_pins[8];
57125710   UINT16 index;
57135711
5714   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5712   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
57155713   {
57165714      output_pins[index].pin = memory_cells[index].pin;
57175715      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
57265724      }
57275725   }
57285726
5729   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5730   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5727   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5728   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
57315729}
57325730
57335731
r29231r29232
57595757   pin_output_config output_pins[8];
57605758   UINT16 index;
57615759
5762   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5760   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
57635761   {
57645762      output_pins[index].pin = memory_cells[index].pin;
57655763      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
57745772      }
57755773   }
57765774
5777   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5778   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5775   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5776   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
57795777}
57805778
57815779
r29231r29232
58055803   pin_output_config output_pins[8];
58065804   UINT16 index;
58075805
5808   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5806   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
58095807   {
58105808      output_pins[index].pin = memory_cells[index].pin;
58115809      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
58205818      }
58215819   }
58225820
5823   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5824   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5821   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5822   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
58255823}
58265824
58275825
r29231r29232
58495847   pin_output_config output_pins[8];
58505848   UINT16 index;
58515849
5852   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5850   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
58535851   {
58545852      output_pins[index].pin = memory_cells[index].pin;
58555853      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
58645862      }
58655863   }
58665864
5867   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5868   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5865   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5866   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
58695867}
58705868
58715869
r29231r29232
58995897   pin_output_config output_pins[8];
59005898   UINT16 index;
59015899
5902   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5900   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
59035901   {
59045902      output_pins[index].pin = memory_cells[index].pin;
59055903      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
59145912      }
59155913   }
59165914
5917   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5918   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5915   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5916   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
59195917}
59205918
59215919
r29231r29232
59495947   pin_output_config output_pins[8];
59505948   UINT16 index;
59515949
5952   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
5950   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
59535951   {
59545952      output_pins[index].pin = memory_cells[index].pin;
59555953      output_pins[index].flags = OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
59645962      }
59655963   }
59665964
5967   set_input_pins(input_pins, ARRAY_LEN(input_pins));
5968   set_output_pins(output_pins, ARRAY_LEN(output_pins));
5965   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
5966   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
59695967}
59705968
59715969
r29231r29232
59995997   pin_output_config output_pins[8];
60005998   UINT16 index;
60015999
6002   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
6000   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
60036001   {
60046002      output_pins[index].pin = memory_cells[index].pin;
60056003
r29231r29232
60246022      }
60256023   }
60266024
6027   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6028   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6025   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6026   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
60296027}
60306028
60316029
r29231r29232
60596057   pin_output_config output_pins[8];
60606058   UINT16 index;
60616059
6062   for (index = 0; index < ARRAY_LEN(memory_cells); ++index)
6060   for (index = 0; index < ARRAY_LENGTH(memory_cells); ++index)
60636061   {
60646062      output_pins[index].pin = memory_cells[index].pin;
60656063
r29231r29232
60836081      }
60846082   }
60856083
6086   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6087   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6084   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6085   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
60886086}
60896087#endif
60906088
r29231r29232
61016099   pin_output_config output_pins[8];
61026100   UINT16 index;
61036101
6104   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
6102   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
61056103   {
61066104      output_pins[index].pin = index + 12;
61076105      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
61166114      }
61176115   }
61186116
6119   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6120   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6117   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6118   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
61216119}
61226120
61236121
r29231r29232
61336131   pin_output_config output_pins[6];
61346132   UINT16 index;
61356133
6136   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
6134   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
61376135   {
61386136      output_pins[index].pin = index + 13;
61396137      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
61486146      }
61496147   }
61506148
6151   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6152   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6149   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6150   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
61536151}
61546152
61556153
r29231r29232
61656163   pin_output_config output_pins[4];
61666164   UINT16 index;
61676165
6168   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
6166   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
61696167   {
61706168      output_pins[index].pin = index + 14;
61716169      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
61806178      }
61816179   }
61826180
6183   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6184   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6181   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6182   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
61856183}
61866184
61876185
r29231r29232
61976195   pin_output_config output_pins[2];
61986196   UINT16 index;
61996197
6200   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
6198   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
62016199   {
62026200      output_pins[index].pin = index + 15;
62036201      output_pins[index].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE;
r29231r29232
62126210      }
62136211   }
62146212
6215   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6216   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6213   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6214   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
62176215}
62186216
62196217
r29231r29232
62516249      }
62526250   }
62536251
6254   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6252   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
62556253   set_output_pins(output_pins, output_pin_count);
62566254}
62576255
r29231r29232
63056303      ++output_pin_count;
63066304   }
63076305
6308   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
6306   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
63096307   {
63106308      output_pins[output_pin_count].pin = registered_pins[index];
63116309      output_pins[output_pin_count].flags = OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
63566354      ++output_pin_count;
63576355   }
63586356
6359   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6357   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
63606358   set_output_pins(output_pins, output_pin_count);
63616359}
63626360
r29231r29232
63936391      ++output_pin_count;
63946392   }
63956393
6396   for (index = 0; index < ARRAY_LEN(registered_pins); ++index)
6394   for (index = 0; index < ARRAY_LENGTH(registered_pins); ++index)
63976395   {
63986396      output_pins[output_pin_count].pin = registered_pins[index];
63996397      output_pins[output_pin_count].flags = OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED;
r29231r29232
64276425      ++output_pin_count;
64286426   }
64296427
6430   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6428   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
64316429   set_output_pins(output_pins, output_pin_count);
64326430}
64336431
r29231r29232
64526450      {19, OUTPUT_REGISTERED | OUTPUT_FEEDBACK_REGISTERED}};
64536451   UINT16 index;
64546452
6455   for (index = 0; index < ARRAY_LEN(output_pins); ++index)
6453   for (index = 0; index < ARRAY_LENGTH(output_pins); ++index)
64566454   {
64576455      if (!jed_get_fuse(jed, 2055 - index))
64586456      {
r29231r29232
64646462      }
64656463   }
64666464
6467   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6468   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6465   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6466   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
64696467}
64706468
64716469
r29231r29232
64966494      {22, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
64976495      {23, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
64986496
6499   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6500   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6497   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6498   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
65016499}
65026500
65036501
r29231r29232
65266524      {22, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
65276525      {23, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
65286526
6529   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6530   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6527   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6528   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
65316529}
65326530
65336531
r29231r29232
65526550      {22, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
65536551      {23, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
65546552
6555   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6556   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6553   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6554   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
65576555}
65586556
65596557
r29231r29232
65786576      {22, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
65796577      {23, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
65806578
6581   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6582   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6579   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6580   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
65836581}
65846582
65856583
r29231r29232
66026600      {21, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
66036601      {22, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
66046602
6605   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6606   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6603   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6604   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
66076605}
66086606
66096607
r29231r29232
66266624      {21, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
66276625      {22, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
66286626
6629   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6630   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6627   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6628   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
66316629}
66326630
66336631
r29231r29232
66486646      {20, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
66496647      {21, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
66506648
6651   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6652   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6649   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6650   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
66536651}
66546652
66556653
r29231r29232
66706668      {20, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
66716669      {21, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
66726670
6673   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6674   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6671   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6672   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
66756673}
66766674
66776675
r29231r29232
66906688      {19, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
66916689      {20, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
66926690
6693   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6694   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6691   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6692   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
66956693}
66966694
66976695
r29231r29232
67106708      {19, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
67116709      {20, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
67126710
6713   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6714   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6711   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6712   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
67156713}
67166714
67176715
r29231r29232
67286726      {18, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
67296727      {19, OUTPUT_ACTIVEHIGH | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
67306728
6731   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6732   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6729   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6730   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
67336731}
67346732
67356733
r29231r29232
67466744      {18, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE},
67476745      {19, OUTPUT_ACTIVELOW | OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_NONE}};
67486746
6749   set_input_pins(input_pins, ARRAY_LEN(input_pins));
6750   set_output_pins(output_pins, ARRAY_LEN(output_pins));
6747   set_input_pins(input_pins, ARRAY_LENGTH(input_pins));
6748   set_output_pins(output_pins, ARRAY_LENGTH(output_pins));
67516749}
67526750
67536751
r29231r29232
72137211      return print_usage();
72147212   }
72157213
7216   for (index = 0; index < ARRAY_LEN(paldata); ++index)
7214   for (index = 0; index < ARRAY_LENGTH(paldata); ++index)
72177215   {
72187216      printf("%s\n", paldata[index].name);
72197217   }
r29231r29232
72397237      return print_usage();
72407238   }
72417239
7242   for (index = 0; index < ARRAY_LEN(command_entries); ++index)
7240   for (index = 0; index < ARRAY_LENGTH(command_entries); ++index)
72437241   {
72447242      if (!strcmp(argv[1], command_entries[index].command))
72457243         return command_entries[index].command_func(argc - 2, &argv[2]);
trunk/src/emu/machine/6526cia.c
r29231r29232
169169   m_flag = 1;
170170
171171   /* setup ports */
172   for (int p = 0; p < (sizeof(m_port) / sizeof(m_port[0])); p++)
172   for (int p = 0; p < ARRAY_LENGTH(m_port); p++)
173173   {
174174      m_port[p].m_mask_value = 0xff;
175175   }
r29231r29232
177177   /* setup timers */
178178   m_pc_timer = timer_alloc(TIMER_PC);
179179
180   for (int t = 0; t < (sizeof(m_timer) / sizeof(m_timer[0])); t++)
180   for (int t = 0; t < ARRAY_LENGTH(m_timer); t++)
181181   {
182182      cia_timer *timer = &m_timer[t];
183183      timer->m_timer = machine().scheduler().timer_alloc(FUNC(timer_proc), (void*)this);
trunk/src/emu/machine/53c810.c
r29231r29232
759759      buf += sprintf(buf, "%s ", op_mnemonic);
760760      need_cojunction = FALSE;
761761
762      for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++)
762      for (i = 0; i < ARRAY_LENGTH(flags); i++)
763763      {
764764         if (op & flags[i].flag)
765765         {
trunk/src/emu/machine/pckeybrd.c
r29231r29232
393393
394394   m_queue[m_head] = data;
395395   m_head++;
396   m_head %= (sizeof(m_queue) / sizeof(m_queue[0]));
396   m_head %= ARRAY_LENGTH(m_queue);
397397}
398398
399399
r29231r29232
402402   int queue_size;
403403   queue_size = m_head - m_tail;
404404   if (queue_size < 0)
405      queue_size += sizeof(m_queue) / sizeof(m_queue[0]);
405      queue_size += ARRAY_LENGTH(m_queue);
406406   return queue_size;
407407}
408408
r29231r29232
669669      logerror("read(): Keyboard Read 0x%02x\n",data);
670670
671671   m_tail++;
672   m_tail %= sizeof(m_queue) / sizeof(m_queue[0]);
672   m_tail %= ARRAY_LENGTH(m_queue);
673673   return data;
674674}
675675
trunk/src/emu/machine/nscsi_bus.c
r29231r29232
447447
448448nscsi_full_device::control *nscsi_full_device::buf_control_push()
449449{
450   if(buf_control_wpos == int(sizeof(buf_control)/sizeof(buf_control[0])))
450   if(buf_control_wpos == int(ARRAY_LENGTH(buf_control)))
451451      throw emu_fatalerror("%s: buf_control overflow\n", tag());
452452
453453   control *c = buf_control + buf_control_wpos;
trunk/src/emu/debug/debughlp.c
r29231r29232
14811481      tagcopy[i] = tolower((UINT8)tag[i]);
14821482
14831483   /* find a match */
1484   for (i = 0; i < sizeof(static_help_list) / sizeof(static_help_list[0]); i++)
1484   for (i = 0; i < ARRAY_LENGTH(static_help_list); i++)
14851485      if (!strncmp(static_help_list[i].tag, tagcopy, taglen))
14861486      {
14871487         foundcount++;
r29231r29232
15031503
15041504   /* otherwise, indicate ambiguous help */
15051505   msglen = sprintf(ambig_message, "Ambiguous help request, did you mean:\n");
1506   for (i = 0; i < sizeof(static_help_list) / sizeof(static_help_list[0]); i++)
1506   for (i = 0; i < ARRAY_LENGTH(static_help_list); i++)
15071507      if (!strncmp(static_help_list[i].tag, tagcopy, taglen))
15081508         msglen += sprintf(&ambig_message[msglen], "  help %s?\n", static_help_list[i].tag);
15091509   return ambig_message;
trunk/src/emu/video/mc6847.c
r29231r29232
929929   }
930930
931931   // loop through all modes
932   for (mode = 0; mode < sizeof(m_entries) / sizeof(m_entries[0]); mode++)
932   for (mode = 0; mode < ARRAY_LENGTH(m_entries); mode++)
933933   {
934934      const UINT8 *fontdata;
935935      UINT8 character_mask;
trunk/src/emu/video/mc6847.h
r29231r29232
151151            UINT8 character = data[i];
152152
153153            // based on the mode, determine which entry to use
154            const entry *e = &m_entries[mode % (sizeof(m_entries) / sizeof(m_entries[0]))];
154            const entry *e = &m_entries[mode % ARRAY_LENGTH(m_entries)];
155155
156156            // identify the character in the font data
157157            const UINT8 *font_character = e->m_fontdata + (character & e->m_character_mask) * 12;
trunk/src/emu/sound/spu_tables.c
r29231r29232
123123   s_to_rate(6080.0f)
124124};
125125
126static const int num_linear_rates=sizeof(linear_rate)/sizeof(linear_rate[0]);
126static const int num_linear_rates=ARRAY_LENGTH(linear_rate);
127127
128128static const float pos_exp_rate[]=
129129{
r29231r29232
229229   s_to_rate(2664.0f)
230230};
231231
232static const int num_pos_exp_rates=sizeof(linear_rate)/sizeof(linear_rate[0]);
232static const int num_pos_exp_rates=ARRAY_LENGTH(linear_rate);
233233
234234static const float neg_exp_rate[]=
235235{
r29231r29232
343343   s_to_rate(11200.0f)
344344};
345345
346static const int num_neg_exp_rates=sizeof(linear_rate)/sizeof(linear_rate[0]);
346static const int num_neg_exp_rates=ARRAY_LENGTH(linear_rate);
347347
348348static const float decay_rate[16]=
349349{
r29231r29232
396396   s_to_rate(3040.0f)
397397};
398398
399static const int num_linear_release_rates=sizeof(linear_release_rate)/sizeof(linear_release_rate[0]);
399static const int num_linear_release_rates=ARRAY_LENGTH(linear_release_rate);
400400
401401static const float exp_release_rate[]=
402402{
r29231r29232
429429   s_to_rate(7008.0f)
430430};
431431
432static const int num_exp_release_rates=sizeof(exp_release_rate)/sizeof(exp_release_rate[0]);
432static const int num_exp_release_rates=ARRAY_LENGTH(exp_release_rate);
433433
434434//
435435//
trunk/src/emu/memory.c
r29231r29232
29012901{
29022902   // make our static table all watchpoints
29032903   if (s_watchpoint_table[0] != STATIC_WATCHPOINT)
2904      for (unsigned int i=0; i != sizeof(s_watchpoint_table)/sizeof(s_watchpoint_table[0]); i++)
2904      for (unsigned int i=0; i != ARRAY_LENGTH(s_watchpoint_table); i++)
29052905         s_watchpoint_table[i] = STATIC_WATCHPOINT;
29062906
29072907   // initialize everything to unmapped
trunk/src/emu/cpu/alph8201/8201dasm.c
r29231r29232
257257   NULL
258258};
259259
260#define MAX_OPS (((sizeof(Formats) / sizeof(Formats[0])) - 1) / PTRS_PER_FORMAT)
260#define MAX_OPS ((ARRAY_LENGTH(Formats) - 1) / PTRS_PER_FORMAT)
261261
262262struct AD8201Opcode {
263263   byte mask;
trunk/src/emu/cpu/tms32025/32025dsm.c
r29231r29232
314314   NULL
315315};
316316
317#define MAX_OPS (((sizeof(TMS32025Formats) / sizeof(TMS32025Formats[0])) - 1) / PTRS_PER_FORMAT)
317#define MAX_OPS ((ARRAY_LENGTH(TMS32025Formats) - 1) / PTRS_PER_FORMAT)
318318
319319struct TMS32025Opcode  {
320320   word mask;          /* instruction mask */
trunk/src/emu/cpu/pic16c5x/16c5xdsm.c
r29231r29232
8484   NULL
8585};
8686
87#define MAX_OPS (((sizeof(PIC16C5xFormats) / sizeof(PIC16C5xFormats[0])) - 1) / PTRS_PER_FORMAT)
87#define MAX_OPS ((ARRAY_LENGTH(PIC16C5xFormats) - 1) / PTRS_PER_FORMAT)
8888
8989struct PIC16C5xOpcode  {
9090   word mask;          /* instruction mask */
trunk/src/emu/cpu/tlcs90/tlcs90.c
r29231r29232
975975const char *tlcs90_device::internal_registers_names(UINT16 x)
976976{
977977   int ir = x - T90_IOBASE;
978   if ( ir >= 0 && ir < sizeof(ir_names)/sizeof(ir_names[0]) )
978   if ( ir >= 0 && ir < ARRAY_LENGTH(ir_names) )
979979      return ir_names[ir];
980980   return NULL;
981981}
trunk/src/emu/cpu/m6809/6309dasm.c
r29231r29232
582582
583583static const int hd6309_numops[3] =
584584{
585   sizeof(hd6309_pg0opcodes) / sizeof(hd6309_pg0opcodes[0]),
586   sizeof(hd6309_pg1opcodes) / sizeof(hd6309_pg1opcodes[0]),
587   sizeof(hd6309_pg2opcodes) / sizeof(hd6309_pg2opcodes[0])
585   ARRAY_LENGTH(hd6309_pg0opcodes),
586   ARRAY_LENGTH(hd6309_pg1opcodes),
587   ARRAY_LENGTH(hd6309_pg2opcodes)
588588};
589589
590590static const char *const hd6309_regs[5] = { "X", "Y", "U", "S", "PC" };
trunk/src/emu/cpu/m6809/6809dasm.c
r29231r29232
351351
352352static const int m6809_numops[3] =
353353{
354   sizeof(m6809_pg0opcodes) / sizeof(m6809_pg0opcodes[0]),
355   sizeof(m6809_pg1opcodes) / sizeof(m6809_pg1opcodes[0]),
356   sizeof(m6809_pg2opcodes) / sizeof(m6809_pg2opcodes[0])
354   ARRAY_LENGTH(m6809_pg0opcodes),
355   ARRAY_LENGTH(m6809_pg1opcodes),
356   ARRAY_LENGTH(m6809_pg2opcodes)
357357};
358358
359359static const char *const m6809_regs[5] = { "X", "Y", "U", "S", "PC" };
trunk/src/emu/cpu/pic16c62x/16c62xdsm.c
r29231r29232
9494   NULL
9595};
9696
97#define MAX_OPS (((sizeof(PIC16C62xFormats) / sizeof(PIC16C62xFormats[0])) - 1) / PTRS_PER_FORMAT)
97#define MAX_OPS ((ARRAY_LENGTH(PIC16C62xFormats) - 1) / PTRS_PER_FORMAT)
9898
9999struct PIC16C62xOpcode  {
100100   word mask;          /* instruction mask */
trunk/src/emu/cpu/tms32010/32010dsm.c
r29231r29232
154154   NULL
155155};
156156
157#define MAX_OPS (((sizeof(TMS32010Formats) / sizeof(TMS32010Formats[0])) - 1) / PTRS_PER_FORMAT)
157#define MAX_OPS ((ARRAY_LENGTH(TMS32010Formats) - 1) / PTRS_PER_FORMAT)
158158
159159struct TMS32010Opcode  {
160160   word mask;          /* instruction mask */
trunk/src/mess/tools/imgtool/modules/ti99.c
r29231r29232
18301830         || ((dest->files[i].fdr_ptr && dest->files[i+1].fdr_ptr) && (memcmp(dest->files[i].name, dest->files[i+1].name, 10) >= 0)))
18311831      {
18321832         /* if the catalog is not sorted, we repair it */
1833         qsort(dest->files, sizeof(dest->files)/sizeof(dest->files[0]), sizeof(dest->files[0]),
1833         qsort(dest->files, ARRAY_LENGTH(dest->files), sizeof(dest->files[0]),
18341834               cat_file_compare_qsort);
18351835         break;
18361836      }
trunk/src/mess/tools/imgtool/modules.c
r29231r29232
4949      imgtool_library_add(lib, modules[i]);
5050
5151   /* remove irrelevant modules */
52   for (i = 0; i < sizeof(irrelevant_modules)
53         / sizeof(irrelevant_modules[0]); i++)
52   for (i = 0; i < ARRAY_LENGTH(irrelevant_modules); i++)
5453   {
5554      imgtool_library_unlink(lib, irrelevant_modules[i]);
5655   }
trunk/src/mess/tools/floptool/main.c
r29231r29232
7070   va_end(arg);
7171}
7272
73enum { FORMAT_COUNT = sizeof(floppy_formats)/sizeof(floppy_formats[0]) };
73enum { FORMAT_COUNT = ARRAY_LENGTH(floppy_formats) };
7474
7575static floppy_image_format_t *formats[FORMAT_COUNT];
7676
trunk/src/mess/machine/6883sam.c
r29231r29232
142142
143143void sam6883_device::configure_bank(int bank, UINT8 *memory, UINT32 memory_size, bool is_read_only, read8_delegate rhandler, write8_delegate whandler)
144144{
145   assert((bank >= 0) && (bank < sizeof(m_banks) / sizeof(m_banks[0])));
145   assert((bank >= 0) && (bank < ARRAY_LENGTH(m_banks)));
146146   m_banks[bank].m_memory = memory;
147147   m_banks[bank].m_memory_size = memory_size;
148148   m_banks[bank].m_memory_read_only = is_read_only;
trunk/src/mess/machine/coco.c
r29231r29232
120120   driver_device::device_start();
121121
122122   /* look up keyboard ports */
123   for (int i = 0; i < sizeof(m_keyboard) / sizeof(m_keyboard[0]); i++)
123   for (int i = 0; i < ARRAY_LENGTH(m_keyboard); i++)
124124   {
125125      char name[32];
126      snprintf(name, sizeof(name) / sizeof(name[0]), "row%d", i);
126      snprintf(name, ARRAY_LENGTH(name), "row%d", i);
127127      m_keyboard[i] =  ioport(name);
128128   }
129129
r29231r29232
850850   UINT8 pia0_pa_z = 0x7F;
851851
852852   /* poll the keyboard, and update PA6-PA0 accordingly*/
853   for (int i = 0; i < sizeof(m_keyboard) / sizeof(m_keyboard[0]); i++)
853   for (int i = 0; i < ARRAY_LENGTH(m_keyboard); i++)
854854   {
855855      int value = m_keyboard[i]->read();
856856      if ((value | pia0_pb) != 0xFF)
trunk/src/mess/video/stic.c
r29231r29232
952952         break;
953953   }
954954
955   if (offset < sizeof(m_stic_registers) / sizeof(m_stic_registers[0]))
955   if (offset < ARRAY_LENGTH(m_stic_registers))
956956      m_stic_registers[offset] = data;
957957}
958958
trunk/src/mess/drivers/gmaster.c
r29231r29232
300300   MCFG_SCREEN_UPDATE_DRIVER(gmaster_state, screen_update_gmaster)
301301   MCFG_SCREEN_PALETTE("palette")
302302
303   MCFG_PALETTE_ADD("palette", sizeof(gmaster_palette)/sizeof(gmaster_palette[0]))
303   MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(gmaster_palette))
304304   MCFG_PALETTE_INIT_OWNER(gmaster_state, gmaster)
305305   MCFG_DEFAULT_LAYOUT(layout_lcd)
306306

Previous 199869 Revisions Next


© 1997-2024 The MAME Team