Hello its blogging time again, and its personal project update time again! Because today I'm giving an update on SpyGames.
Previously I described my concept for this Cold War Visual Novel game with Apple II visuals. But today I'm discussing my progress on the game as well as the development issues I'm facing. The first problem is my strategy. Now I didn't actually have the main story in place other than the intro where Carol wakes up in her dorm. So my main strategy was to film the live action footage. Here’s the catch, while I was planning to shoot the footage over Spring Break, I didn’t actually get around to it until May 3, with the shoots being from May 3rd to May 5th and May 10th, Just you know 8 DAYS BEFORE I WAS SET TO GRADUATE!
Another problem was I didn’t have anything to capture first person footage. Ideally I would have liked to have used a pair of spy glasses with a camera exactly at eye height. But I didn’t have a pair, or even a GoPro. So how did I do it? Simple, after doing some research, I got some binder clips and some scotch tape and just clipped one clip to my phone, and the other to my Pacman cap. While it wasn’t perfect, it did work and I shot my first successful test footage with this on April 30th.
Video
My first test shot
But once I had the footage, I had to get the video frames from the camera, to my Apple II emulation setup. As I said previously, for creating the graphics I'm actually using 2 Apple II emulators: AppleWin, and MAME, With MAME Being used for converting the shot video footage into Apple II graphics, and Applewin being used for editing the images and creating the final FMV movement animations. However I couldn't just add the video file to the MAME Apple II and its virtual ComputerEyes Digitizer, because it can only take PNG images.
So I need to break them down into individual frames, But how do I do that? Easy, I use VLC player.
VLC player
You see, VLC player has this filter option called: Scene Filter. and what it does is as the video plays it automatically converts each frame of video and save them as image files.
VLC player
So by using that, I was able to take the first 28 second video I had and convert all of the video frames into 288 individual PNGs (Settling at 200).
The video frames from the first extraction
So the design flow went like this I fired up MAME with the correct hardware configuration and with the Computereyes software in Drive 1 and my work disk in Drive 2 scanned each photo that i could in the 8 Level Capture mode, saved them to the work disk then trasfer it over to apple win where I could Use Koala Paint and then create a test animation With another peice of Software from Koala called The Graphics Exibitor (Not to be confused with the The Graphics Magician which im using for stills).
The whole process for creating animation
Now I ran into 2 problems with this: 1). The Image Quality, and 2). The Disk Capacity. Now the Image quality wasn't that much of a problem. You see the problem is the digitizer has to capture every singe bit of detail it can and work it into the Apple II's quirky graphics hardware. But I need it to have as little color as possible so I could edit the image and remove traces of the modern world to fit the period better. What I needed to do was to add some kind of "Line Art" type video filter to make it resemble a traced black and white image on paper, and a google search lead me to discover the ShortCut video editor that had a Sketch filter that did the job just perfectly.
The result of the Sketch filter in ShortCut
I also switched to a later version of the ComputerEyes digitizer that got better results. While I did mention it was a card, that's not entirely true. When the ComputerEyes digitizer launched for the Apple II in 1984, the original devices plugged into the Gameport, not into the Expanson Slots.
The DigitalVision ComputerEyes Digitizer (1984)
Meaning instead of plugging into one of the expansion slots, the ComputerEyes plugged into the port on the apple II used for Paddles, Joysticks, and even some copy protection dongles for programs like Visicalc.
The Apple II Gameport
Later on in 1987, Digitalvision introduced the ComputerEyes/2 which did plug into the expansion slots, and was able to produce much sharper pictures. I found that using the Sketch filter images with this card and software on the Hi Res Single Level setting produced some much better results.
The DigitalVision ComputerEyes/2 Digitizer (1987)
However the second problem was not as fixable, because it boils down to the Apple II's most common data storage format: The 5.25 inch floppy disk. Now when Koala Paint was introduced on the Apple II in 1983, to designed to read files formating in DOS 3.3 which was the most common operating system for disk based Apple II's at the time. The thing is, Although a DOS 3.3 disk has 140K of storage, 16K is used for the OS itself, so there's only 124K left for the user. On top of that, files are broken up into sectors of 256 Bytes each, and a single Hi Res image take up 34 sectors (roughly 8K) on the disk. Meaning out of the 200 images I could only fit around 15 frames per disk!
The Apple DOS 3.3 Catalog of one of the original work disks
Not helping this is that Apple II Emulator disk files can only be 1 side of a physical disk. While the real Apple II's floppy's were single sided, It was possible to flip the disk over, cut a write protect notch on the other side and write to the other side of the disk, but of course since I'm using emulation, I can only use 1 side at a time. So that means I have to right to a lot of disks, In fact here's a screen shot of my desktop with each of the disks.
Yep, I have to have 14 disk images to hold all of the digitized frames! Although its 200 frames and not 210, I had to have 210 because math. Now you might ask yourself: Well Ryan, cant you use a hard drive or something to store the images? Surely their were hard drives available for the Apple II right? Well, Correct, there WERE Hard drives available for the Apple II. But not only were they insanely expensive making them very rare and with little software supporting them, Using Hard Drives and other storage media on the Apple II doesn't work exactly how you would expect, Because the Apple II handles other storage media formats in a really weird way.
Now when you think of storage media on a modern computer you can have your data and or your OS on a SSD and have a hard drive or disc drives pluged in which you could tranfer data to regardless of where it's pluged in to. But the Apple II does not work like this and to understand why, You need to go back to when the Apple II launched in 1977.
You see, When the Apple II launched, the only storage media available was using a cassette recorder. By plugging the tape recorder into the Cassette In and Out ports on the back of the computer, you could either save programs by recording onto a blank tape, or load any prewritten software on cassette by playing it back.
A Typical setup for a cassette based Apple II
However, due to the cassette's slow speed and unreliability, It didn't take long before floppy disk support to be on the cards. With Apple President Mike Markkula being particularly dissatisfied with cassette tape storage, as he had a favorite checkbook program that two minutes to read in the program from the tape, and another two minutes to read files.
Apple President Mike Markkula with Steve Jobs in 1977
So at a board meeting in December of 1977, the writing was on the wall to introduce a disk drive for the Apple II, with the task of designing the drives going to the same engineer that created the Apple II: Engineering genius Steve Wozniak.
Steve Wozniak in 1983
There was just one problem, Woz didn't actually know how floppy drives worked. But after reading through the technical manuals for floppy drives from Shugart Associates and North Star Computers, He was able to create a floppy disk controller card that not only used a fraction of the 50 chips used in other controllers, but stored more data and ran incredibly fast. He then teamed up with Apple Engineer Randy Wigginton to write some software to control the disk drive. During their week of Christmas vacation in 1977 they worked day and night creating a rudimentary disk operating system, working hard to get the drive ready to demonstrate at the 1978 Winter Consumer Electronics Show in Las Vegas.
The Entrance to the 1978 Winter Consumer Electronics Show
Despite some hiccups, it managed to attarct many eyes at the show, and the Disk II Drive was eventually released In June of 1978 for $595, making it the most affordable disk drive of its time.
The Disk II drive (1978)
There was one problem, Since the Apple II wasn't Designed to use a disk drive, it couldn't detect it when hooked up and powered on as early Apple II's booted into a Monitor by default, Much like the Apple I did. So in order to use the drive you needed to press CTRL+B the Return to get into the built in Integer BASIC, then PR# then the slot number the disk drive was plugged into to boot the disk.
The Disk II drive boot up process on an original Apple II (Note: You may notice I had Another disk image in Drive II called Boot 13. That's because the early disks formatted with the Disk II were 13 sectors at launch, only capable of storing 113K per disk. when Apple introduced DOS 3.3 in 1980, they updated the ROM code on the disk controller to upgrade it from 13 sectors to 16 sectors, making it capable of storing 140K per disk. However, due to the ROM change the upgraded Disk II's were incompatible with the older 13 sector disks. So in order to get around it you need a special boot disk on upgraded Disk II's, later drives, and even emulators like Applewin to boot 13 sector disks. So if you thought my disk storage troubles now are bad, Imagine if I was dealing with writing to one of those disks!)
This was not ideal for most users and combine that with the introduction of an improved version of Applesoft BASIC in late 1978, and Apple engineers began work on an improved Apple II with built in Applesoft and better disk support. The result was the Apple II+ launched in June of 1979 for $1,195 dollars.
The Apple II+ (1979)
What set the Apple II+ apart from the original is that it replaced the monitor with something called an AUTOSTART ROM, and what it does is once the the computer is turned on, it triggers a RESET, cleared the screen (displaying “APPLE ][” at the top), and began a scan down the slots, starting at slot 7 down to slot 1 to examined the first few bytes of code in each card’s ROM for a specific sequence that identified it as a Disk II controller card. If one was found, control was passed to that card, causing the disk drive to startup and begin loading the disk operating system into memory. This made disk operation much easier and required less input from the user to boot the disk. As a result, all subsequent Apple II models from the Apple II+ all the way to the IIGS and IIc+, used the AUTOSTART ROM for detecting disks.
Consumers did ask about other storage formats though. In 1978, around the same time the Disk II was introduced, Mike Scott (Apple’s then new president) and Randy Wigginton were asked at a user group meeting whether they were going to go to the larger capacity 8 inch floppy drives. While they answered that no, they did say the Apple II might get a hard disk by 1979 or 1980, and possibly earlier than that, even a double sided, double density 5.25 disk holding 500K per disk. But none of this ended up happening because by then Apple were working on a successor machine that would replace the Apple II. Hard Drives DID eventually appear for the Apple II, but they weren't by Apple. The first company to introduce a Hard Drive for the Apple II was Corvus Systems, who introduced a hard drive controller card in 1979.
An ad for the Corvus Hard Drive System (1979)
This card interfaced with a 10MB IMI-7710 Winchester hard drive and worked by organizing the data by dividing it up into 143K volumes, each the size of a standard Apple II floppy disk. Access to each volume involved use of the otherwise ignored “Volume” parameter in DOS (For example, “CATALOG V20” would list the disk directory for the disk formatted as volume 20). The problem was this was very expensive at $5,350 Dollars, and because now many people could afford it, virtually no software would take advantage of it.
Eventually Apple did introduce their own branded hard drive. They called it the ProFile, and it made its debut in 1981 for $3499 dollars and having 5MB of storage.
The Apple ProFile (1981)
However this drive was designed, Not for the Apple II, but rather for the Apple III, Apple's Ill Fated Business focused successor to the Apple II launched in November of 1980.
The Apple III (1980)
You see, When Apple was designing the Apple III, they wanted all support and development for the Apple II to be cancel in favor of the Apple III. So they ended up hard coding DOS 3.2 and DOS 3.3 to work specifically with the Disk II and its 110K and 143K (respectively) of available storage and had no plans to allow the Apple II to use the new ProFile hard drive. But when the Apple II proved to still be successful and Apple III proved to be a flop, The company soon shifted its focus back to the Apple II, and began making peripherals like the ProFile to be compatible with it, With Apple introducing a ProFile interface for the Apple II in 1983.
Now you would think Apple would redesign the Disk II controller card and DOS 3.3 to support the ProFile by making it function similar to the Corvus drives, Right? Well, No. Not only did it require a card that plugged into a different slot and data cant be transferred from on drive in one slot to another, but DOS 3.3 wasn't redesigned to support it and any software in DOS 3.3 wont support it. The problem is along with the fact that DOS 3.3 was hardcoded not to support larger drives, But the ProFile was designed to be used on the Apple III, which was designed to run a special Operating System called The Sophisticated Operating System, or SOS (Pronounced Sauce, How Clever!).
Apple SOS (1980)
So in order to support larger disk formats, Apple introduced a new operating system that used some of the features of SOS to allow the ProFile to work on the Apple II. The result was ProDOS, Launched in October of 1983, and was bundled with all Apple II computers and drives for the rest of the lines production.
Apple ProDOS (1983)
The big advantage of ProDOS was it was designed to accept larger disk formats. Not only could it support the ProFile but it could also support 3.5 inch floppy drives! That's Right, with the release of the Apple Macintosh in 1984, Apple's engineers were some of the first in the computer industry to get their hand's on the then new 3.5 inch floppy disk format by Sony, allowing for the Mac's disks to use an impressive 400K each. Making a drive using the format for the Apple II seemed like a no brainer and just a year later in September of 1985, with the introduction of the UniDisk 3.5 drive.
The Apple UniDisk 3.5 Drive (1985)
The UniDisk drive also had one major advantage over the drives used in the Macintosh, the UniDisk used a double sided drive so it could store twice as much at 800K per disk, and used its own 6502 CPU which allowed it to operate much faster. Although it couldn't be used on the Macintosh due to the internal CPU, With the Introduction of the Apple IIGS in 1986, the drive was reintroduced as the Apple 3.5. It was essentially the same as the Unidisk, but it dropped the CPU controller board in favor of hardware control allowing it to work on the IIGS, The Mac, and older Apple II's with the appropriate card.
The Apple 3.5 Drive (1986)
Now you might wonder, why I didn't just switch over to using ProDOS? Well Koala Paint can only read disks in DOS 3.3, it can't read images stored on a ProDOS disk, and while the ComputerEyes Software does have the option for writing onto a ProDOS Formatted Disk, I wasn't aware of any ProDOS based Drawing software that could support the ComputerEyes file format. So while I stated my first test conversions with DOS 3.3 and 14 disk imaged on July 18, by July 20th it was becoming too tedious and I began looking for a better sollution for storing, editing, displaying and eventually animating these Hi Res Images.
For the Next 10 days, I began looking through forums and old computer magazine archive's for solutions. At first I thought about simply using software to increase the disk space. You see, although DOS 3.3 disk are hard coded and have only 124k of space it was possible to squeeze around 200,000 bytes of disk space and Compute! Magazine published two programs to do so: Apple Disk Booster and DOS Expander, Published in 1985 and 1987 respectively.
Left to right: The Listing for Compute!'s Apple Disk Booster (1985), and DOS Expander (1987)
But not only did thes programs not work, but even if they did work, it probably would be incompatible with the two programs. Then I began looking at the homebrew copression tool fhpcak By Andy McFadden (The creator of the CIderPress Apple II Disk Image Editor) even going on to Github posting about Koalapaint compatibility in the Issues section and even having a brief discussion about the topic with McFadden himself, but that also didnt get me much progress. Then I took a look at a strange solution: trying to somehow convert it into backrounds in the LOGO programing language and its TURTLE graphic capability. I got the idea to try this after using the online Apple II Emulator Apple IIjse runing Apple LOGO, and noticing each program takes up much less space on a DOS 3.3 disk than Hi Res images.
Apple II Emulator Apple IIjse running Apple LOGO
And sure enough, I managed to find this article from a 1984 Newsletter: The National LOGO Exchange tittled: LOGO and DOS: Classroom Partners. In it, A school teacher by the name Nancy Parks Sopp from Fairbanks Alaska described a method to load Koala Paint Pictures into MIT LOGO and vice versa.
The National LOGO Exchange's Koala paint and MIT LOGO transfer Process (1984)
But this also ended in failure as not only was I notable to find the EXACT version of MIT LOGO used, but also the I don't think the data was able to transfer between screens properly resulting in logo just displaying a blank screen.
Eventually I did find a piece of drawing software that does use ProDOS and compatible with ComputerEyes ProDOS image files: 816 Paint by Baudville Software from 1987.
816 Paint (1987)
Not only is designed for ProDOS users, but it can read images in any type of drive in any slot. so I could read drives in Slot 5, Slot 6, and Slot 7, making it extremely flexible. But it seems when I solve one problem, I end up having a new one. My first choice was to use .HDV images storing 700 Blocks each storing 40 images each. but when I first attempted to write to one of these HDV's in MAME, I ended up getting this dreaded message.
DISK ERROR! Yep, it still cant write to the Hard Drive! So I decided to go a different route: Write the ComputerEyes/2 software to a 3.5 inch disk image so I could write to two Apple 3.5 drives in Slot 5. So some mucking about with Ciderpress II later, and I was able to write a .2MG disk image that worked and could tranfer ProDOS formated images onto Drive 2 and Slot 2. I also swapped regular MAME for another version called MAMEUI, Not only does this have the option for a drop down menu system that makes interacting with non arcade based systems like the Apple II much easier, but it also remembers the slot configuration so you don't have to keep setting it up each time.
MAMEUI
However this new .2MG image I made does appear to have some strange side effects. For one thing: I cant select Drive 2 in the save menu to save to the second drive in Slot 5, So in order to load and save images I need to select the Pathname option and type in the ProDOS Pathname (/FRAMES). It could be possible that those were tied to the DOS 3.3 functionality and when transferred the ProDOS partition of the disk to the .2MG image it got left behind, But I'm not entirely sure.
But again when I solve one problem, I end up having to figure out a new one. Since Im not using Koala Paint and The Graphics Exibitor anymore, I need to find kind of slideshow or animation program that supports these images so I can display and run the final animations. At first I tried looking at a BASIC program listed in the Teachers Guide that accompanied 816 Paint. It creates a simply two frame animation based on whichever files you input. At first It didn't work, but for some reason when I tried it yesterday it did end up working. but when I try to get it to display more frames not only does it become tedious to enter each frame name one at a time, but the method used to create it becomes less smooth.
So since yesterday I have been looking around for either a software package or maybe even a BASIC program I could write that could do the job. I've looked at Baudvilles own Take 1 Deluxe, Brouderbund's Animate. and anything else I could find. I even found something in that 1987 Compute! magazine while writing this that I'm going to look into after.
So to sum up my challenges I need to fix I need to:
1). Get ahold of some ComputerEyes/816 Paint image compatible display, slideshow and or animation software.
2). Work out the rest of the story elements that I didn't before.
3). Somehow get ahold of some more first person footage for each of these actions.
These are going to be difficult for me, but I feel I can work something out. But that wraps up this entry on SpyGames for now, I plan to return with another entry when I hopefully get an Display/Animation program and I get more into the RenPy side of the project and work out the story and multiple choice elements. But until then that wraps it up for my entry today, as always, Thanks for reading! see you next time!