summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/skeleton/pcksurfer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/skeleton/pcksurfer.cpp')
-rw-r--r--src/mame/skeleton/pcksurfer.cpp91
1 files changed, 91 insertions, 0 deletions
diff --git a/src/mame/skeleton/pcksurfer.cpp b/src/mame/skeleton/pcksurfer.cpp
new file mode 100644
index 00000000000..70601c97503
--- /dev/null
+++ b/src/mame/skeleton/pcksurfer.cpp
@@ -0,0 +1,91 @@
+// license:BSD-3-Clause
+// copyright-holders:
+/***************************************************************************************************
+
+Datawind Pocket Surfer.
+
+Pre-smartphone era pocket Internet terminal.
+
+https://web.archive.org/web/20060221032558/http://www.datawind.com/
+https://web.archive.org/web/20060221032551/http://www.datawind.com/specs.html
+https://uk.pcmag.com/first-looks/7579/datawind-pocketsurfer
+
+CPU Sharp LH79524-NOF (package BGA-208).
+SIM300 v7.03 GSM/GPRS modem.
+
+Tear down of a production unit: https://www.youtube.com/watch?v=lQi8veu3ugU
+
+PCB:
+ _____
+ _______________________________| |__ _______________
+ _| _____________ |USB| |_| \_____________________
+_| ________ | | _______ |
+| |DW- | | SIM | |STB5610 |
+| |SBTM1 | | SOCKET | | | |
+| |Bluetooth | AMD | |______| |
+| |_______| | COMMS | ___ _____________ _______ |
+| ___________ | ||___| ___ | IS42S16400B| | | |
+| |U4 Flash | |SIM300 v7.03| | | | DRAM | ________ |IS42S16400B
+| | | | GSM/GPRS | LVX457->_| |____________| |SHARP | |DRAM | |
+| |__________| |____________| ___ |LH79524| | | |
+| ___ | | |NOF | | | |
+| LCX125->__| |_<-LCX125 |_______| |______| |
+|______________________________________________________________________________|
+
+Chip labeled "31314 3A05U 511AD" inside the DW-SBTM1 module.
+
+
+ TODO:
+ - Everything
+*/
+
+#include "emu.h"
+
+#include "cpu/arm7/arm7.h"
+
+
+namespace {
+
+class pcksurfer_state : public driver_device
+{
+public:
+ pcksurfer_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ {
+ }
+
+ void pcksurfer(machine_config &config);
+
+protected:
+ required_device<cpu_device> m_maincpu;
+};
+
+
+static INPUT_PORTS_START( pcksurfer )
+INPUT_PORTS_END
+
+
+void pcksurfer_state::pcksurfer(machine_config &config)
+{
+ // Basic machine hardware
+ ARM7(config, m_maincpu, 76'205'000); // Sharp LH79524-NOF (BGA-208)
+}
+
+// ROM definitions
+
+ROM_START( pcksurfer )
+ ROM_REGION32_LE( 0x800100, "maincpu", 0 )
+ ROM_LOAD( "mxl29lv640mbt.u4", 0x000000, 0x800100, CRC(39896d0b) SHA1(98904409483b22c77adb9495147c2e433a607e61) )
+
+ ROM_REGION32_LE( 0x2000, "bootrom", 0 )
+ ROM_LOAD( "lh79524.bootrom.bin", 0x0000, 0x2000, NO_DUMP )
+
+ ROM_REGION( 0x800, "keyboard", 0 )
+ ROM_LOAD( "attiny28l.bin", 0x000, 0x800, NO_DUMP ) // 2K bytes of Flash
+ROM_END
+
+} // anonymous namespace
+
+// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
+COMP( 2006, pcksurfer, 0, 0, pcksurfer, pcksurfer, pcksurfer_state, empty_init, "Datawind", "Pocket Surfer (prototype)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )