Skip to content

Commit 3a7d725

Browse files
committed
ibm/thinkpad600.cpp: swap boot banks, make it go standard x86 POST
1 parent 115ac93 commit 3a7d725

File tree

2 files changed

+25
-15
lines changed

2 files changed

+25
-15
lines changed

Diff for: src/devices/video/s3virge.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
*
88
*/
99

10-
#ifndef MAME_BUS_ISA_S3VIRGE_H
11-
#define MAME_BUS_ISA_S3VIRGE_H
10+
#ifndef MAME_VIDEO_S3VIRGE_H
11+
#define MAME_VIDEO_S3VIRGE_H
1212

1313
#pragma once
1414

@@ -230,4 +230,4 @@ DECLARE_DEVICE_TYPE(S3VIRGE, s3virge_vga_device)
230230
DECLARE_DEVICE_TYPE(S3VIRGEDX, s3virgedx_vga_device)
231231
DECLARE_DEVICE_TYPE(S3VIRGEDX1, s3virgedx_rev1_vga_device)
232232

233-
#endif // MAME_BUS_ISA_S3VIRGE_H
233+
#endif // MAME_VIDEO_S3VIRGE_H

Diff for: src/mame/ibm/thinkpad600.cpp

+22-12
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
IBM ThinkPad 600 series
66
77
TODO:
8-
- Punts to Flash ROM BIOS Programmer thru serial port terminal;
8+
- Intel e28f004b5t80 flash ROM;
9+
- RTC (what's the CMOS here?);
10+
- keyboard (thru H8/3437);
911
1012
===================================================================================================
1113
@@ -115,14 +117,6 @@ void thinkpad600_state::mcu_map(address_map &map)
115117
static INPUT_PORTS_START(thinkpad600)
116118
INPUT_PORTS_END
117119

118-
void thinkpad600_state::thinkpad600_base(machine_config &config)
119-
{
120-
// TODO: move away, maps on MB resource, bump to H83437
121-
h83337_device &mcu(H83337(config, "mcu", XTAL(16'000'000))); // Actually an Hitachi HD64F3437TF, unknown clock
122-
mcu.set_addrmap(AS_PROGRAM, &thinkpad600_state::mcu_map);
123-
// mcu.set_disable();
124-
}
125-
126120
void thinkpad600_state::superio_config(device_t *device)
127121
{
128122
pc97338_device &fdc = *downcast<pc97338_device *>(device);
@@ -156,6 +150,14 @@ static void isa_internal_devices(device_slot_interface &device)
156150
device.option_add("pc97338", PC97338);
157151
}
158152

153+
void thinkpad600_state::thinkpad600_base(machine_config &config)
154+
{
155+
// TODO: move away, maps on MB resource, bump to H83437
156+
h83337_device &mcu(H83337(config, "mcu", XTAL(16'000'000))); // Actually an Hitachi HD64F3437TF, unknown clock
157+
mcu.set_addrmap(AS_PROGRAM, &thinkpad600_state::mcu_map);
158+
// mcu.set_disable();
159+
}
160+
159161
void thinkpad600_state::thinkpad600e(machine_config &config)
160162
{
161163
PENTIUM2(config, m_maincpu, 366'000'000); // Intel Pentium II 366 Mobile MMC-2 (PMG36602002AA)
@@ -216,8 +218,16 @@ void thinkpad600_state::thinkpad600(machine_config &config)
216218

217219

218220
ROM_START(thinkpad600e)
219-
ROM_REGION( 0x80000, "pci:07.0", 0 )
220-
ROM_LOAD( "e28f004b5t80-10l1056_rev15_h0399m.u60", 0x00000, 0x80000, CRC(fba7567b) SHA1(a84e7d4e5740150e78e5002714c9125705f3356a) ) // BIOS
221+
ROM_REGION( 0x80000, "bios", 0 )
222+
ROM_LOAD( "e28f004b5t80-10l1056_rev15_h0399m.u60", 0x00000, 0x80000, CRC(fba7567b) SHA1(a84e7d4e5740150e78e5002714c9125705f3356a) )
223+
224+
ROM_REGION( 0x80000, "pci:07.0", ROMREGION_ERASEFF )
225+
// TODO: in linear mapping it will boot to a terminal only Flash ROM BIOS programmer
226+
// 0x40000-0x5ffff contains standard x86 startup, this hookup needs confirmation later on.
227+
ROM_COPY( "bios", 0x40000, 0x60000, 0x20000 )
228+
ROM_COPY( "bios", 0x60000, 0x40000, 0x20000 )
229+
ROM_COPY( "bios", 0x00000, 0x20000, 0x20000 )
230+
ROM_COPY( "bios", 0x20000, 0x00000, 0x20000 )
221231

222232
ROM_REGION(0x0f780, "mcu", 0)
223233
ROM_LOAD( "hd64f3437tf-10l1057_rev04_h0499m.u39", 0x00000, 0x0f780, CRC(c21c928b) SHA1(33e3e6966f003655ffc2f3ac07772d2d3245740d) )
@@ -234,7 +244,7 @@ ROM_END
234244

235245
ROM_START(thinkpad600)
236246
ROM_REGION( 0x80000, "pci:07.0", 0 )
237-
ROM_LOAD( "tms28f004b_18l9949_rev16-i2298m.u76", 0x00000, 0x80000, CRC(00a52b32) SHA1(08db425b8edb3a036f22beb588caa6f050fc8eb2) ) // BIOS
247+
ROM_LOAD( "tms28f004b_18l9949_rev16-i2298m.u76", 0x00000, 0x80000, CRC(00a52b32) SHA1(08db425b8edb3a036f22beb588caa6f050fc8eb2) )
238248

239249
ROM_REGION(0x0f780, "mcu", 0)
240250
ROM_LOAD( "hd64f3437tf_10l9950_rev08_i2798m.u32", 0x00000, 0x0f780, CRC(546ec51c) SHA1(5d9b4be590307c4059ff11c434d0901819427649) )

0 commit comments

Comments
 (0)