As someone who's always been amused by the film depictions of computers doing various things and who has always thought about how they had to get a programmer to make up something that looks "right" for a very specific scene, this absolutely tickled my fancy. Well done.
Dude, that's awesome! You've inspired me to tool around with my own pet project idea. No one asked you to do this but we're glad you did. Wouldn't that be incredible if the original programmer saw this. Cheers!
Fascinating. I bought an Apple 2c from John Lewis in London in late 1984 to use as my business machine. As well as the monitor, I had a second disk drive, and an Imagewriter printer. The software was AppleWorks. About a year later I bought a modem and subscription to Prestel. This was a precursor to the Web, providing text based information pages via dial-up. I was a freelance video editor, and was getting work in Europe and had set-up and account with a travel agent. They had some flight information pages on Prestel, so when I got a request, I could look up flights and book them over the phone. In the mid-1980w, this was a huge thing to be able to do. AppleWorks was a pretty powerful package. I used it for all my business documents, and the spreadsheet could invoices and quotes. The 2c remained my business machine till I got a Macintosh in the early 90s. I also had a Telex machine, so my office was pretty cutting edge! I had a go at Apple Basic, but at the time I also had a BBC Micro B with BBC Basic which I had got quite good at. This project was a lot of work, but the end result is cool. Unfortunately my 2c failed sometime in the early 2000s, and I no longer have it.
I work with a number of 20-something programmers all day (I'm 56). They have no clue about the history of their profession. This is an awesome example of the hoops we used to have to jump through that were limitations of the platform. Worrying about clock cycles and refresh times. Loved the trip down memory lane!
Kudos for going down this particular route of history and recreating the IIc’s big screen moment! That scene from my favorite Bond movie made quite an impression.
I applaud you for this effort! I was in high school at the time "A View to a Kill" came out, and I had an Apple //c, just like Stacy's. I was so excited to see my computer in a James Bond movie! I remember thinking at the time, "How did they do that?" I certainly didn't have your skill at forging the software, and I am delighted to finally see my question answered, so many years later! Thank you.
This gives me an energy boost today to keep pushing forward on my own development project which nobody asked for and is a waste of time (but which is teaching me a whole lot about Pico-8 development). Great video!
Great job! Not only did I watch your video, I've watched it a couple times and downloaded your disk image. It's hardly a waste of time. P.S. Love your little idea of the monitor on your //c. I did the same thing, even painted it white, put a little Apple logo, and screwed it to a little 3d printed block that lays in the void the handle leaves when it's proped up. This computer series is an icon, and it deserves the attention it gets in movies, RU-vid videos and even new hardware and software even now, decades after it's been discontinued. Apple // Forever!
Congrats Max! I learned to code doing graphics in Applesoft BASIC, so this was superbly satisfying to watch. :-) Also, it's cheating writing readable code with those many columns!
Saw it first on the RCR Podcast and heard it again from John Gruber. Just watched to the end, since you asked. Thanks for the video; it was really fun to watch!
Yes! I’ve thought the same thing. They’re in the credits, they also did computer stuff for some other movies around the same time. I wonder how right or wrong I got this...
I had an Apple //c just like this when I was a kid. Complete with the matching CRT green screen, too! (And, please, it's definitely "//c", not "IIc" !)
I'm forgetting the details, but I remember back in the 80s that a magazine published an Atari 8-bit program that was used on the TV show Whiz Kids that was used when an actor was supposed to be typing on the computer. All the text was predefined and when any key was pressed, the next correct character was displayed. This let them produce text synchronized with the keypresses, but they didn't have to worry about typos. I haven't been able track down the magazine or software, though I remember typing it in.
I just finished coding a carousel into a popup menu in Swift in SpriteKit (not quite 8-bit, but pixelate none the less), not quite the same, but nice to finish. It's 11pm now, and I'm off to bed, but decided to watch this none the less. I would greatly encourage you to finish the Gun-barrel graphic, if you have time..
I'm actually willing to suggest that the code was written in Apple Pascal. It has several features here that would come in handy: The "turtle graphics" library could have used vectors (move turtle - draw), and that would allow drawing of the map as opposed to saving as a hi-res image. Next up: The Pascal library has the ability to write text and characters on the screen - any location, and allows this without 3rd party tools, nor does Pascal require shape tables for this (to be fair, I think behind the scenes, it did use shape tables for characters in hi-res mode). So, to write say Organ Trail, then pascal was used. The other HUGE advantage? Well, pascal is a VERY nice block structured coding language with things like global and local variables. Thus say when you go into town to buy things, that code module can be loaded off disk, and loaded on demand. and when you leave town then that code module (and memory, and all variables) are now un-loaded from memory. So, this means that Pascal allowed a program as large as the whole disk drive, and bits and parts of code can be loaded on demand (kind of like a .dll on windows , .dll = dynamic link library if you wondering). So, my bets are Pascal was used. The other advantage is Pascal would usually run about 2-4 times faster then AppleSoft basic, and EVEN better was the Pascal code was compiled, and thus code was stripped of comments and source code - making the smaller compiled p-code smaller then what the same code in AppleSoft basic would be. (to be fair, both Integer and FP BASIC on apple used tokens for each keyword). I wrote a Payroll system for the Apple II - including the payroll tax calculation parts. Pascal was a FANTASTIC development language, and a code and block structured language was not only great, but was also far better then AppleSoft at memory management, and that on-demand loading of code, and release of variables in code? Rather nice! so, I think that any professional development firm hired for that James Bond filum? I'm betting they used Pascal for this, including the Turtle graphics library that allows characters to be written at any X,Y location on the screen - just like Organ Trail does.
Well, as a history follow up, I was doing some deep reading on the Origan Trail development team. Turns out they DID use Apple Soft Basic, and the hunting game was written in assembler. However, I should also note having used the Apple Pascal system, when you draw a circle, you have a tell tell 4 quadrants of the circle plotting, and if you look close at the Bond footage, you note close that the circle looks to draw in 4 quadrants - again a tell tell sign that the demo program was written in Pascal. So, it's still possible that the movie example was written in AppleSoft basic, but the look and feel still suggests Pascal was used. However, as a history lesson, and being correct? My my comments about Organ Trail having been written in Pascal is 100% wrong and incorrect - my apologies for this error, it was written in AppleSoft BASIC, and as noted, the little hunting game was 6502 assembler.
Great video Max! Very fun! A couple tips: if you edit BASIC with a text editor, and then use EXEC to enter it on the Apple II, you can save a lot of memory by removing the line numbers from your REM lines so they do not get stored into AppleII memory. Also, why not use the SCALE command to draw your circle shape at different sizes instead of creating multiple circle shapes of various sizes?
Thanks John and thanks for the tip, I didn't know about EXEC. I originally considered and tested using SCALE but found that it didn't produce 'round' enough circles. Because as far as I could tell you can't scale down, only up, it would require that I started with the smallest circle and made it bigger. This lead to the number of zig-zaggy-step-bits in the circle to be too minimal, and the circles looked boxy. Hence the different sized shapes in the shape table.
I live near the center of the target circle! Castro Valley. There is an old Nike missle battery above Lake Chabot there at the dot in the center of that circle.
It's honestly pretty cool, James bond had a habit of showing off the latest of technology at the time along with fantasies that would later on come to fruition in a very sci-fiesque way. Of course the movie props are always simplified and made in such a way that caters to the filming and plot rather than the function, but i've always imagined in the real world this scene would have taken a couple of minutes from dialing up to the mainframe at the meteorological center over a serial modem (Totally plausible even at the time) and accessing the data, but the result would have been much slower and less visually interesting and mostly probably just RTTY text rather than complex vectors (maybe) But - it is a fun bit of typical James Bond foreshadowing on technology that of course eventually became very normal, these days we just pull up a web browser and view the results in seconds. As a side note, the Beep beep beep boooop they often played was a very basic (and very overused) sound effect they added in post whenever a computer was involved in any scene. Very 70s thing to do because apparently every movie that involved computers had to add beeps and boops to every scene involving a computer because i guess that's what people with no experience using them thought was a normal thing for a computer to do always, out of context. :D i'm glad that's not something computers actually do in reality, because i'd get very annoyed fast if doing any task on my computer resulted in a constant beep beep beep booop day in day out.
Amazing work, Max. Truly incredible. I can confirm it works on my IIc, but there is one caveat. I tried running it from my FloppyEMU attached to the external drive connector. I used ROM Xc and ROM4X to make the External 5.25" the boot drive, but sadly, ROM4X doesn't work insofar as it polls the internal drive (nothing in it) forever. In other words, it won't work with ROM4X via FloppyEMU attached externally. I just installed the BMOW Drive Switcher (a hardware switcher, unlike ROM4X), and that works. But some people probably only have ROM4X, so I'm curious if there is something in your code that might be causing the IIc to poll the internal drive (bypassing ROM4X), such that it won't work without the BMOW hardware hack.
Thanks for such a detailed comment, I somehow missed it at the time. I think you’re onto something. I haven’t got a rom xc but I do want one. If I ever get one in the future I will look into it. If you wanted to have a look at the code and suggest a fix it is on my github. I have only ever tested this by booting from the internal drive, or from the BMOW drive switcher with the floppy emu. Cheers.
Thank you for making time to reply. I can confirm that there is no work around for ROM Xc. I know because I talked to the developer. But the BMOW Drive Switcher does work.
Pretty sure I remember from forever ago, (sort of), an article about this scene that said the graph of the "earthquake" was actually a digitized waveform of a sound...
Excellent video. I really appreciate the love put into every detail. Maybe you can list the tools used on the PC side for image conversion, disk image creation, etc?
Thanks and sure: Apple II Software I Used: - Apple Mechanic for creating shape tables - Mouse Paint for adding the text to the map - Copy II Plus for moving files between disks etc - The boot disk uses DOS 3.3 - I also looked at but didn’t use a bit of other Apple II software while I was deciding what to do about text on the HGR screen. Including The AppleSoft toolkit font thing (I think called animatrix), Fontrix, Beagle Graphics, some other beagle font tools, etc Mac Software I Used: - Visual Studio Code to write the code - Virtual II as the emulator, I also created the disk images in virtual II and imported files (using its ability to mount a folder as a disk). Once the files were imported I moved them around using Copy II Plus. - Affinity Designer for drawing the coastline for the map (not the label text though). I also figured out the best way to draw my circles in Affinity before plotting the manually in Apple Mechanic. My first pass at freestyle plotted circles were charming but wonky. - Buckshot for converting the coastline drawing to HGR data - ADT Pro to send the disk image to my Apple IIc and write it to 5.25 floppy
I can't say I remember this in the film, but interesting as this was still still a UK production movie I guess, and the apple II never took off so I propose this prop and software was done by a US team?
Great job!! I am wondering if you would consider tackling the stealth plane secret video on 'Cloak and Dagger' next. That movie focused on Atari 5200 and an 800XL would be a typical computer similar to that console.
After the real arcade game, he transfers to the fake part an 'extra chip' accessed after the final door in the game, which starts at the eagles head screen and continues to the vectory plane model that rotates and ends in a screen of scrolling data.
Yes it is, I considered tracing the characters out to be exact but I had to draw the line somewhere. The font on the previous screen was likely just plotted out (you can see how it draws left to right in the original) but I wanted to figure out how to put text strings on the screen. The experts at Sotheby’s can use these and other clues to spot the forgery.
Hi Max, I still have my Apple //c, so appreciate your program. Can I ask what you are using for a monitor with your system? Is it just using the composite out for monochrome, or does it also do colour? I have a PAL Apple //c, but no monitor.
I'm using the composite out here, so it's a monochrome signal. The little monitor I'm using is a field monitor that I bought a while ago now. It's not very good for the Apple II at all. When the Apple switches graphics modes it confuses the monitor, and it goes to a blue screen for a while. So I don't use this monitor any more. I use a RetroTink now and a regular HDMI display. Which is super crisp but still black and white for the PAL IIc. For colour I think you can make an adaptor to get the signal out of the monitor port, or there's a IIc to VGA adaptor from a2Heaven which gives full crisp colour...
Ha that's brilliant, very interesting deconstructing these programs that looked so cool at the time. On the beeping noise, the same one was in numerous Bond movies for 'high-tech' computers. You can hear it in The Spy Who Loved Me (1977) when Bond is reprogramming the Submarine Tracking System - amazingly there's a RU-vid clip: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-NIQPIinkEmc.html Computers seemed to be pretty noisy in those days!
Yes! Computers are the second noisiest things in bond movies, the first being electronic doors that make low whirring sounds while they slide open and closed. I wanted to talk about the sound of computers in the Bond movies, because I just love it. But I cut it out of the video because it was already super long. My guess is that a lot of the Roger era sounds were made on a Moog
That was fun and frankly the most I had ever seen of the Apple IIc. Why wouldn't they just have plotted the graphics for the text on the first screen also, rather than having suffered with the fonts?
Thanks Tommy! It’s possible that they did manually plot the text on the first screen, you can kind of see it trace out if you watch that portion in slow-mo. I considered doing it that way too but it would have been almost as laborious, figuring out the pixels for the characters and writing the code to plot them in their appropriate relative positions. I figured I would have learned less if I’d done it that way - More valuable to learn how to put any character anywhere on the HGR screen for potential future projects.