Previous 15994 Revisions Next

r14009 Friday 13th January, 2012 at 09:39:56 UTC by Miodrag Milanović
Connected ISA slot devices for 32bit PC machines [Miodrag Milanovic]
[src/mess/drivers]at.c
[src/mess/machine]isa.c

src/mess/machine/isa.c
r14008r14009
194194         m_maincpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*dev, start, end, mask, mirror, rhandler, rhandler_name, whandler, whandler_name,0xffff);
195195         break;
196196      case 32:
197         m_maincpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*dev, start, end, mask, mirror, rhandler, rhandler_name, whandler, whandler_name,0xffffffff);
197         if ((start % 4) == 0) {
198            if ((end-start)==1) {
199               m_maincpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*dev, start, end+2, mask, mirror, rhandler, rhandler_name, whandler, whandler_name,0x0000ffff);
200            } else {
201               m_maincpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*dev, start, end,   mask, mirror, rhandler, rhandler_name, whandler, whandler_name,0xffffffff);
202            }
203         } else {
204            // we handle just misalligned by 2
205            m_maincpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*dev, start-2, end, mask, mirror, rhandler, rhandler_name, whandler, whandler_name,0xffff0000);
206         }
198207         break;
199208      default:
200209         fatalerror("ISA8: Bus width %d not supported", buswidth);
r14008r14009
214223         m_maincpu->memory().space(AS_IO)->install_readwrite_handler(start, end, mask, mirror, rhandler, whandler, 0xffff);
215224         break;
216225      case 32:
217         m_maincpu->memory().space(AS_IO)->install_readwrite_handler(start, end, mask, mirror, rhandler, whandler, 0xffffffff);
226         if ((start % 4) == 0) {
227            if ((end-start)==1) {
228               m_maincpu->memory().space(AS_IO)->install_readwrite_handler(start, end+2, mask, mirror, rhandler, whandler, 0x0000ffff);
229            } else {
230               m_maincpu->memory().space(AS_IO)->install_readwrite_handler(start, end,   mask, mirror, rhandler, whandler, 0xffffffff);
231            }
232         } else {
233            // we handle just misalligned by 2
234            m_maincpu->memory().space(AS_IO)->install_readwrite_handler(start-2, end, mask, mirror, rhandler, whandler, 0xffff0000);
235         }     
218236         break;
219237      default:
220238         fatalerror("ISA8: Bus width %d not supported", buswidth);
src/mess/drivers/at.c
r14008r14009
559559   MCFG_ISA16_BUS_ADD("isabus", "maincpu", isabus_intf)
560560   MCFG_ISA_ONBOARD_ADD("isabus", "fdc", ISA8_FDC, NULL)
561561   MCFG_ISA_ONBOARD_ADD("isabus", "com", ISA8_COM_AT, NULL)
562   MCFG_ISA16_SLOT_ADD("isabus","isa1", pc_isa16_cards, NULL, NULL)
563   MCFG_ISA16_SLOT_ADD("isabus","isa2", pc_isa16_cards, NULL, NULL)
564   MCFG_ISA16_SLOT_ADD("isabus","isa3", pc_isa16_cards, NULL, NULL)
565   MCFG_ISA16_SLOT_ADD("isabus","isa4", pc_isa16_cards, NULL, NULL)
562566
563567   MCFG_FRAGMENT_ADD( pcvideo_vga )
564568

Previous 15994 Revisions Next


© 1998-2018 The MESS Team