 I have a new phone. This is a Motorola Timeport P1088. It dates from about 1997. It is exceedingly rare, as this is a discontinued industrial prototype, and this is one of the very first smartphones ever made, and I worked on this on my first job. So this thing dates from about 1999, which puts it nearly 10 years prior to the Apple iPhone, and the first Android phone came out a year after that. So this is seriously early. This is competing with the likes of the Palm Pilot and so on. The timestamp on this, if you can make it out, is 8th of November 1999, but the project actually lasted a couple of years. At the time I worked for DAO systems who produced the operating systems DAOS and Elate, and when I joined this project was the big thing, and like all of DAO's projects, it lasted almost until the point of shipping and then got cancelled. So go figure. That's why these things are so rare. I got this from a friend who used to work at DAO who had one in the bottom of drawer and never used it, and he gave it to me, and I powered it up and it still works. So let's give you a tour of what a really early smartphone looks like. So I will power it up and I will point out that the reason why this cable is blue is that it is so old that the plastic is literally decomposing, and as a result it is very slightly slimy and horrible. I think that's just what old hardware is like. So let's throw it right way up. There we go. You can tell from the way it's labeled top, and you can see it start to boot. I will take a cut here because it takes about five minutes to boot, and I'm not going to make you sit through it all. So here we are up and running, and as you can see it does indeed look like a smartphone. Now this thing, this screen is a passive LCD, which means it's really hard to put under the camera. I think it's looking all right, looking at the camera viewfinder, but I'm afraid you just have to bear with me on this one. If it makes you feel any better, it's really hard to see from where I am too. It is a touch screen, although it is a resistive touch screen, so you can either try and prod it with your fingers, which works very badly, or you can use, you can find it, the built-in stylus, which works much better, although it's not a great screen. The software stack is all written in Java. DAO at the time were mainly known for our very fast and lightweight JVM, which sat on top of the Elate operating system. Elate itself did load time compilation of bytecode into native machine code, and the JVM simply translated Java bytecode into Elate's bytecode, so all Elate systems got a JVM JIT for free, and this is based on this. And it's pretty sluggish, but when you realise that this thing contains a 11 megahertz ARM processor, it's not bad. So let's take a tour through the applications. It's this old style user interface, because Apple hadn't come along and persuaded people that they'd reinvented the smartphone. So if you fire up an application, you remember this character, Duke? This is the contacts and phone. There is nothing in the phone book. Yeah, it's actually still loading all the contacts off the SIM. It won't boot without a SIM. I just found one in a drawer, so Heaven knows what's on it. You can see it loading the contacts off. Let's come back to that one. Let's go back to the home screen. The calendar. What's in the calendar? Yeah, I remember it as being a lot snappier than this, but doing anything is painfully slow. Now, this may be because this is a debug build with lots of compile time, lots of runtime checking, but I wonder if just my memories are faulty and it turns out that this thing wasn't nearly as fast and snappy as I remember. So the clock is wrong. It thinks it's 1970. Yes, 1119. Yeah, the clock's reset to epoch. I have fired this up before and I've changed the clock on it, but it's really no fun. Let's actually try and find that. Is there any calendar in options? No, it's not, but this is the standard user interface used. It's all based on, I think it's the mid-P standard. It might be an AWT. Anyone who's used Java will be shrinking in horror at this. This is seriously old-school Java. No generic types. No proper type checking. It was grim. Okay, where is the, if I, oh, give me a world time. Yeah, this is where I would be if I was a clock. And yeah, I've set the time zone to the closest thing it's got to Zurich, which is Berlin. Yeah, it has a very limited set of cities. And if I, come on, if I go into the time selection thing, I'm like naively you'd think that I would be able to just, you know, type 18 onto the keypad. But no, you can't. You have to toggle up one at a time using this painfully slow thing. Yeah, and the touchscreen is not what you call sensitive. Yeah, that's just not responding to me. The left-hand edge of the touchscreen isn't quite right. So let's just ignore the clock. Let's go back to the top. We've seen the calendar. Network is for phone networks. I have put a sim in it because it won't work without one. What is this showing? Okay, I tell a lie. It's not phone networks. It is internet access. Because this predate mobile phone data, the way you got on the internet with this was that you made a modem call via WAP to a dial-up ISP. And here's a blaster in the past. You've got Pipex, Demon Internet Services. That's the internal service we use for development. Yeah, 0118, yeah, there's a reading number. Yeah, that number is dead. Yeah, it would dial into an internet service and it would let you use the browser for a bit while racking up monster call chargers and then you would disconnect and no more access. It was really quite terrible. I am going to skip messaging. Messaging is the SMS application. The reason I'm going to skip it is the phone contains a whole bunch of messages still in flash, which I don't want to delete, but do correspond to real people and they're full of real phone numbers. So I don't want to show that. The browser is a very, very early HTTP one browser, but unfortunately you need to dial up to an ISP to actually use it. I mean it's not like this thing has Wi-Fi, they hadn't invented Wi-Fi at this point, so I can't actually do anything with it. If there were local pages I could access them, but no one saved any. So I'm afraid that's it. No browser. So yeah, there's somebody screwed up the user interface here. This menu button doesn't work, so you have to go to the main menu here to exit to get back to the main page. Oh yeah, no multitasking. Browser notepad, because of course everybody wants to type in notes on a device with no keyboard, but let's make one. Is that actually going to behave? There we go. It has handwriting recognition, sort of. The right hand stroke is supposed to be a space, but it doesn't always fire properly. It's not, I have tried typing Palms graffiti on it and that sort of works, but the commands are not quite the same. And now I can type lots of text in here, or I can just hit the soft keyboard. I can try and hit the soft keyboard. There we go, which works so much better. There you go. That's better. Yeah, the stylus is possibly not very well calibrated. So let's save our lots of yogurt, and there it is in the file system. Yes, well, there's a to-do list, loads. And yeah, this works in exactly the same way. You can just add items. I'll just skip over that because it's really dull. It's all standard Java widgets. So world time, you've seen games I will get back to in a moment. Actually, I'll try to set up. I wonder if the pointer needs recalibrating. Screens and keypad. Calibrate, okay. Because the resistive screens need calibrating. The weird thing is, you can hear it beep when I press, but it doesn't respond until I press quite hard. Oh, can I turn the keypad on? Oh no, that just makes noises. Put this on DTMF for that proper keypad fuel. Good old DTMF tones. You don't get that much anymore. I wonder if we got here securities, probably a password. Yeah, I won't set that because it's probably impossible to break quick print. Ah, quick print is clearly definitely not Palm's graffiti. Yeah, of course, Palm's graffiti then turned out to be not Palm's graffiti for other reasons. But anyway, accessories. I don't know why automatic answer would be an accessory. I haven't tried this in phone mode. My current sim is like several sizes too small to fit in this. Memory. Ah, yes. This thing has one megabyte of RAM. How's that for a smartphone? And we use about half of it. Or this could be file system, to be honest. Would this have had a megabyte of RAM back then? Probably not actually. No, I think that is file system. And this will have had a lot less RAM for, you know, running a full JVM in. Nothing under REL numbers. Oh, that'd be release numbers. This is for entering your own name and address. Powerman test is a utility for testing the power management stuff. So selecting one of these will call a method on the underlying power management API so I can do things like turn the backlight on and off. On. Off. And also does stuff like do master reset. So I'm not going to play with this. I have a nasty feeling if I were to do a hard reset and this thing would never come back to life again. Yeah, not touching that. Flags is interesting. Flags is another development tool. This appears to be showing us what the various compile time flags are. And I don't know what any of them are, but I can see a reference to a late at the top here. So maybe there were builds of this UI that didn't run on a late. And, you know, lots of stuff. And the UI is so horrible to deal with. And though none of them except the top one automated is actually selectable. And as I don't know what it does, I'm not going to select it. What else have we got here? Shortcuts. These are probably mapped to the keypad. Let's try adding one or not. What does this do? Yeah, I have no idea what these do. Possibly that they map to one, two, three, four, five, six on the keypad. But again, I don't want to fiddle with it too much. It runs. It's pretty unique. So I don't want to break it too much. Sync log is for syncing with your PC. You would connect the cable up here to a PC and run a dedicated sync app. Do you remember Active Sync for Windows Mobile? Yeah, it's that. But different. It has never synced. So I'm not even sure they wrote the sync app. Applet installer is for installing mid-P applets. And I have no idea how it works. There appear to be no UI features at all. I mean, this doesn't do anything. So maybe we never got around to writing that. Ah, these are the shortcuts. There's a dedicated menu top right to get at them. That's useful. Just want to make sure the screen is visible. Modem. Yes, use the same serial connection to connect to a PC, except when this thing is activated, it turns into a just an ordinary haze modem. So the PC can like dial up and make calls and connect to ISPs on it. Oh, yeah, as mentioned here IR port, which is this Urder. It's a serial connection via infrared. And if you've ever used Urder, you'll know why I'm about to change the subject very rapidly. And here we have manual testing. This is one of our test apps. And I presume that here you type in a code and something happens. But I don't know what. Yeah, that Duke figure, whenever you go in and out an application, that appears while it's doing something. And it's very tease. Oh, okay. It's crashed. I'm going to power cycle it and get back to you. Okay, well, here we are again. Yes, I did actually find that application the last time I went through all this. And I just forgot that one made the phone crash. So I didn't mention, but it's got this off mode. It's not often any way is just it shrinks the display size on the screen to reduce power and it turns off most of the software. It's the standby says charge only mode. The reducing the screen size thing is an interesting idea, except they've managed to screw up the LCD parameters. And so it goes to the muddy color. We push the power button and it comes out of standby mode. Anyway, somewhere down the bottom of this. That was it. ROM applets allows you to turn on is another debugging tool. It allows you to turn on and off some of the the special applications. These are these checkboxes here. These are the Java Java classes that correspond to each of the applications. So let me actually see if I can find that stats app. I went through and turn them all on just to see if there's anything interesting there. Yeah, there's a lot. Here we go. This one stats. Oh, it is turned off. Oh, that's because I just touched it. Yeah, the UI is kind of bad. I mean, you've noticed that when I touch the scroll bars, it actually moves like one pixel. It's the same as touching the arrows. And when you pick up and drag the thumb, it doesn't update on the fly. It's pretty unpleasant to use. It's entirely possible that Motorola canceled the project because it just wasn't working adequately. I can understand that from actually looking at this now. As I said before, I remember it as being pretty slick and polished. Okay, and now, of course, it's reloading all the contacts off the SIM so the phone book won't work. Let's have a look at the calendar. Calendar calculator. It's a calculator. Yeah, that's awesome. And the buttons may be big enough to operate by hand. Not really. How many digits can it do? Not many. Is that really on the eight? Well, at least you get exponents. Not that you can enter an exponent. And there's no menu or anything. This is all you get. Seriously, they could have done better than that. It may be Java. Even Java can do a calculator. Okay, well, we'll have to look at the phone book in a moment. But the really impressive thing for certain values of impressive are the games. See, one of the things that Elate managed to get right was it had a really good graphics library, which meant that graphic support from Java, if you're running on Elate, was actually pretty good. Of course, these are all Java games, so they're all kind of terrible. But it does demonstrate that you can actually do reasonably decent stuff. Hello? Let's look. Dragging a card around. It's really slow and laggy. And it was faster than this. I actually managed to complete and win a game of solitaire in this the other day. I was so bored. Yeah, the top left of the screen is where the screen doesn't really work very well. So trying to get a new card there is pretty bad. Yeah, I won't make you sit through this. Let's go back. Duke is a terrible, half finished Pac-Man clone where you use the Duke character here. Roam around this maze. And you notice that the... I'm not actually sure what that is. That might be a server. It's leaving a trail behind it. It's not supposed to. It's just they didn't get around to like undrawing the character after it moves. So if I pick up the power pill, two power pills, I can chase after it and eat it. And now it teleported somewhere else. And goodness, I'm having so much fun. Yeah, we didn't write this. At least I hope we didn't write this. That would have been really embarrassing. Hit me is whack-a-mole. I mean, what else are you going to play on a touch screen? 70%. Yeah, moving on. I will skip world driving for now because it's actually quite good. Smart ball. Yep, it's a magic. Magic eight ball. Yes, it has a vibration feature. Not so clear. Ask later. Yeah. Personally, I would not have used the vibration feature with the magic eight ball, but there you go. Mancala, I believe I've actually played. It's a rather interesting game involving moving seeds around on this playing piece. And it's a rather interesting game. It's quite strategic. Yeah. Seeds, you pick up all the seeds out of a cup and then they get spread through all the cups following. So I picked up a six from here and we've got one extra in all these cups. I think I've played it twice. I thought it was interesting, but I didn't have to play it. So I'm not even going to waste anybody's time. But now we get to world driving. World driving is cool. So let's go to New York City and play. I think it's a little bit of time to load. Here we go. It's a first person racing game. Oh yeah, it's at the start button before we actually start. And it's actually pretty smooth. The graphics aren't going to blow anyone away, or at least they're not going to blow anyone away who's used to game consoles. But this is a 1997 phone. This came out in the days when phones ran knocky as snake. And it's surprisingly smooth. This is because this is a pure graphical game. It's not doing any processing. It's not trying to do anything with AWT widgets, which are terrible. It's just using like the raw graphics calls. It could even be using a internal API to an internal API to elate graphic primitives. Because this is pretty impressive. I mean, it's still not fun. But let's give up on that. That's all the games. Let's see if the phone book's loaded. Come on. I do not know why they thought that was a good mascot for Java. It's just so stupid and patronizing. And annoying. And taking a suspiciously long time. I wonder if this has softlocked. Okay, I just cut a chunk because that actually read the contact out of the SIM, which contained real people's phone numbers. And I didn't want to show them on the screen. Anyway, it's a phone book. You know what phone books look like. So, I will show you the outside of the thing. It's an industrial prototype. So like, you don't get a battery with it. This is like P17 number four. We've got a whole sequence of these things as they made hardware revisions to the platform. And then we had to update our software to match. We have debug ports soldered onto the board. And they cut these windows in the case to let you get access to them. There's another Urda port on the side. I think this is the serial port. But I don't know why there'd be an extra one to go with when there's already a big port on the bottom. But there you go. Volume controls. Oh, yeah, that's actually adjusting the contrast. We should have found that earlier actually. Urda port on the top. Speaker and microphone is not really a lot to it. You've got your standard set of phone hard buttons. And of course people who use smartphones these days won't really know what to do with these apparently. Okay, I pushed the phone button and it brought up the phone book. So I had to cut a bit again. So, pence the glitch in the video there. We have a Motorola button down the bottom. I don't know what that does. Home. Again, I wish I'd known that earlier. And that's it. Here we have, I think you've just seen and I've just started at the. That was me starting the phone book. Again, hence another cut. Okay, well, I think I've exhausted all the possibilities of this thing. It would be interesting to try and find a dial-up web service that you can still talk to and try out the web browser. But I am not particularly confident that any still exist. If, if anyone knows of one, do let me know. I'll need to get a sim adapter to plug in my modern sim. Hopefully, their back was compatible to 1997. I mean, it's only 20 years ago. So, there you are. A 1997 to 1999 smartphone. How the world has moved on. I hope you enjoyed this video. Do let me know what you think in the comments. Special bonus segment. You know how I skipped over the boot sequence twice? Well, now you can see it in real time. Enjoy and done. I hope it was worth it.