Category: Guides

Updated workflow for EDD disk imaging and Passport by 4am patching on the Apple IIgs

The Apple IIgs has proven to be the most versatile and helpful machine in my hobby of preserving Apple II software.  Having moved from the Apple //e with two Disk II controllers, I had to rethink how I could use Passport on the IIgs and also use I’m fEDDup for Essential Data Duplication images.

The following post aims to explain:

  1. Slot configuration and rationale
  2. The most efficient way to boot into GS/OS, I’m fEDDup and Passport by 4am on a MicroDrive / RAM Fast card
  3. Choosing between imaging tools
  4. Optionally using an EDD card for advanced preservation and applying the card in a IIgs
  5. Testing of disk images using Virtual ][
  6. Workflows to copy data from the Microdrive in Ciderpress

A good video which compliments this post is available now https://youtu.be/9MfhkLRv638

Slots

Configuration of slots in the IIgs control panel isn’t clear that Slot 5 automatically remaps to Slot 6 for compatibility in Apple II ‘mode’.  Therefore no changes to Slot 5 and 6 in the IIgs control panel are made.

As I use a Floppy Emu for writing disk images to in Passport and also testing them on the IIgs, this is connected to a Apple 5.25″ Disk controller in slot 7.  I chose this because being the highest number, when I reboot the IIgs, it will run the Floppy Emu which allows me to see if the disk image runs straight away. The second benefit is Slot 7 is accessibly by Passport.  This requires the IIgs control panel to set Slot 7 as ‘Your card’.

The MicroDrive I use is in Slot 2 and works very well for all my purposes which are running GS/OS and booting partitions of ProDOS 8 software (I’m fEDDup and Passport by 4am).  This requires the IIgs control panel to set Slot 2 as ‘Your card’.

The EDD card with DB-19 upgrade cable resides in Slot 4, with the IIgs control panel set for Slot 4 as ‘Your card’.  Note: This will disable your mouse in GS OS until you set it back.  No worries for disk imaging.  This particular card has two Disk II ribbon cable headers on board with a cable going to a DB-19 connection allowing a Unidisk 5.25″ drive to piggy back into it.  This cable is the perfect solution if you don’t have a Disk II drive available.

cofcof

With the cards installed you need to configure your Microdrive storage device with partitions you can use.  My partitions are as follows on a 128mb CF card:

  1. Microdrive utilities and Prodos 1.5
  2. Passport by 4am
  3. I’m fEDDup 32mb version*
  4. GS/OS 6.0.3 on a 27mb partition

sdr

CiderPress was the tool of choice to read the proprietary Microdrive structure and write disk images as partitions.  I did encounter one issue with block-too-small partition.  I formatted my four partitions as 65535 blocks in size using the Microdrive utilities, but the supplied 32mb version of I’m fEDDup is 65556 blocks – too big for Ciderpress to copy over due to size mismatch.  The workaround was to make a new 32mb disk image in Ciderpress that was specifically 65535 blocks. Then open the I’m fEDDup image in another window, then simply copy and paste the contents to my one block smaller image.  This was then written to the Microdrive successfully.

Feeling creative I decided to take the 4am supplied 140kb disk image of Passport 20160902 and ‘just’ write that to the second parttiion of my Microdrive CF and see if it worked.  I know I could use that disk space for other things but I couldn’t tell you what I’d use it for!  This allows me to directly boot Passport from a solid state media and frees up time that I used to spend booting from media then swapping disks.  Who knew you could write a Prodos floppy disk image to the Microdrive as a partition and it boots!

Using Ciderpress to write partitions is out of the scope I’d like to have in this post so please follow other guides for further information.  I should point out I use a Microdrive instead of a CFFA as they are out of stock.  Nothing like needing to use what you have to make the most of it.

Now to consider the right tool for the job.  Passport by 4am will allow you to verify a disk is readable by pressing V.  It will also read a disk to memory and write to your Floppy Emu a ‘clean crack’ version of the original with patches applied to overcome copy protection. Recognition of patterns is performed in real time – the original is read from Slot 6 Drive 1 and then written to Slot 7 Drive 1 (where the Floppy Emu has a blank disk image mounted).

The benefit from using Passport first up to ‘crack’ your discs is it will tell you if a patch was applied.  If no patches were applied there is a good chance no further work is needed to boot or read that disk.  If patches were applied, it will explain what was changed.  If I see this I make a note that the original was indeed copy protected and then test the new disk image to check it boots.

I’m fEDDup will create EDD files about 2mb in size from your Apple II media if set to 23 tracks and 0.25 track steps.  This software is versatile enough to create .DSK files at high speed (~30 seconds or less).  Have you considered that I’m fEDDup makes .DSK files too?

Pros of using I’m fEDDup:
– The fastest way to save unprotected disks
– Visual display of tracks

Cons
– Disks with copy protection will be copied but the disk images won’t boot (or have issues) so you’ll have to run them through passport thus creating double handling as file names are limited eg SPACEQD1 opposed to Space Quest Disk 1

Now if you’re a high-flying Apple II enthusiast, or in my case just blessed to know generous people, you’ll have an EDD card to use.  I’ve suggested slot 4 and explained that I’m fEDDup works well from the Microdrive.  The EDD component has extra options.  Step allows you to choose 1, 0.5 or 0.25.  This adds more time to the imaging process though.  Tracks are standard at 22 but 23 is suggested to capture an extra track just in case.

My settings are as follows and its worth noting you access these by pressing O for options, Enter to save, then ESC to return back to the main screen.

  • NIB and NIT off
  • Overwrite on
  • Tracks 23
  • Steps 0.25
  • Disk II card slot 6, drive 1 (where the Apple 5.25″ Unidisk is in the IIgs dis port)

To capture a .DSK image which we now understand will quickly copy an unprotected disk with a basic file name, press D.

To capture a disks contents at archival quality, create an .EDD image by pressing S.  Make a cup of tea (to be consumed away from the keyboard of course!)

Now if you’d like to follow what I think is the best workflow for discs – keep reading.  You’ve got your SD card based floppy emulator connected to slot 7, 5.25″ Unidisk in the Apple IIgs disk port and Passport y 4am booting from your source.  Prepare duplicate blank disk images and file names. It can be handy to have extra blank disc images for Side B.

With your file names matching the discs and copied over to your floppy Emu (or SD Disk II etc), boot passport and mount your blank.  You may need to check the destination is Slot 7 in Passport.  Press C to crack the disc and or transfer the contents to your corresponding disk image.  When finished, eject the floppy and place it in front of your monitor, so you can take a photo on your phone for later documentation.  Having a photo of the passport report and floppy next to it helps keep track of what belongs to what.

You should be able to read your Floppy Emu SD card on your computer, double click on the file you’ve just made and have it boot in virtual II or your emulator of choice.  So what happens if all you get is a blank screen or something cryptic like “?OVERFLOW ERROR IN 10”?  You need to double check the disk can’t be cracked in Passport first as that will most likely help.  If the patches applied don’t work or no patches can be found BUT the disc boots happily and runs as you’d expect on real hardware, it’s time for an EDD image to be created for advanced, and manual cracking.

If you have encountered disks like this, as I did last week, then EDD is where it’s at.  After creating your EDD images, take the lid off your IIgs and remove the CF card from the Microdrive.  This manual labour adds up – try and do this in batches to save wear and tear too.

Connect your CF card to your computer via a USB card reader and open Ciderpress.  Open the volume for your CF card and allow it to process the directory listing.  Find your newly created EDD file, right click and press Extract. Once the file has moved over, copy it to a folder shared to your Mac.

Now that you’ve copied over your used .dsk fiels from the Floppy Emu SD card and moved the EDD file over, it’s time to document.  I encourage you to keep notes as you go of anything significant like if you had to clean the disk, what errors happened and so on.  Save these into your folder for the title and any photos you took along the way – like the one I hope I suggested you take of the disk label against the screen showing the Passport results.

If you have any further questions on the process by all means comment or email me directly and I’ll respond… eventually 😉

Make your own cable: use your Commodore 1084S-P1 Video Monitor with the Apple IIGS RGB output

The aim of this post is to have a consolidated page to reference when considering monitors other than the Apple RGB with your IIgs that natively support analogue RGB such as the Commodore 1084S.

I personally own the 1084S-P1 (P for Philips, D for Daewoo) variant in great condition that has been beckoning me to use it.  With the sudden opportunity to buy an Apple IIgs ‘Woz Edition’ I set to work in using the RGB video output from it.

Jon Co of Manila Gear demonstrated his 1084S displaying a perfect image driven by an Apple IIe RGB card and custom cable back at WozFest.  I contacted Jon about the cable (among many others things!) and he replied with links to parts to purchase at Jaycar (a local electronics enthusiasts store) and then a pin out guide.

With the parts from Jaycar and the experienced hand of my Uncle to solder each pin we created my new favourite solution.

The 1084S is a workhorse of a monitor for RGB enthusiasts as it supports with the press of a button BOTH Analogue RGB and Digital TTL RGB with intensity!  This monitor can be wired for true CGA colour representation, the Commodore 128 and many more.

I had forgotten how good a CRT can be when LCDs have changed how we perceive a good image.  An example is the “Check startup device” message from the IIgs which has a fast Apple logo scrolling horizontally from left to right on the screen.  The 1084S provided the first time I’d ever seen it move rapidly back in forth smoothly and sharply without any shuddering, ghosting, trails etc.  Seeing is believing.

Gushing aside I have put some time into a new set of tables which I hope clearly and accurately demonstrate the pin outs and where to link them in making your own cable.  Click here for the PDF versionCommodore 1084S Video Monitor DB-9M to Apple IIGS RGB DB-15M pin out verification

Photos:

20160814_105524

You can see in the second pic that I added a home made strip of the Apple 6 colours to customise the montior.

Note: The naming pattern of connections is a grey area that no one can be perfect at.  I have reviwed the excellent Wikipedia article on D-subminiature and can see DB-9 should be DE-9.

Apple IIGS ROM 00, Woz Limited Edition – technical note on ROM differences

Apple IIGS ROM 00, Woz Limited Edition – technical note on ROM differences

Last week I picked up an Apple IIGS, Woz Limited Edition.  As I am completley new to the Apple IIgs, I couldn’t tell a friend what ROM revision it was.  We found it was a ’00’ which is a true original IIgs with revisions taking us through ROM 0, 1 and 3.

Below is a compilation of information on the differences between each ROM in a simple FAQ style section and then the original techinical note from Apple.

Source: http://mirrors.apple2.org.za/ground.icaen.uiowa.edu/MiscInfo/Empson/gsrom00v01

Paul W. Good <good@primus.ca> wrote:

> What differences are there in the IIGS ROM0 and ROM1 machines?
> 
>      1.  In the ROMs themselves?

Lots of little odds and ends.

The main difference is that ROM 01 has newer versions of the low-level
toolsets (version 2.0 of toolsets 1 through 13, instead of version 1.0),
incorporating a lot of bug fixes.  The majority of these are also fixed
on a ROM 00 machine by running new enough system software (System 2.0 or
later), because the system software loads the patches into RAM at
startup time.

If you are running old system software, the main benefit of ROM 01 is
that it will free up some RAM that would otherwise be occupied by these
patches, and the same bugs are fixed if you run System 1.0 or 1.1 on a
ROM 01.

There is a technical note (TN.IIGS.026) which summarises the changes in
ROM 01 (which it confusingly calls "ROM 2.0").  Apart from toolbox
changes, the other significant ones I can spot from a quick glance
include:

- Detection of disk changes in the Apple 3.5 Drive works correctly.
- AppleTalk bug fixes.
- Applesoft handles horizontal tabbing correctly in 80-column mode.
- Maximum RAM disk size increased to almost 8 MB (instead of 4 MB).
- Interrupt handler bug fixes.
- New monitor command (#) to enable some debugging desk accessories.
- New monitor command (Ctrl-N) to set native mode.
- Serial firmware bug fixes and improvements.
- SmartPort (slot 5) firmware has some bug fixes and better performance.

The most significant difference between ROM 00 and 01 is the fact that
System 4.0 and later (all system software based on GS/OS) will not run
on ROM 00 - it requires ROM 01 (or ROM 3, which has a different
motherboard).

You may run into some old software which only works on ROM 00, because
the software broke the rules about how to use the firmware, or relied on
old bugs which were fixed.

>      2.  In the motherboards?

No difference at all.  All that changed was the ROM chip itself.

There is one point worth mentioning here: early IIgs machines also had a
faulty Video Graphics Controller chip, which could also be upgraded for
free at the same time as the ROM 01 upgrade.

The symptom of the VGC fault was that monochrome double hi-res graphics
mode produced pink fringing effects (it should have been pure black and
white) and/or flickering pixels.  Some machines (including mine)
exhibited the same symptoms in 80-column text mode, with variable
effects depending on the foreground and background colours.

> The location of a file on the Internet describing the differences
> would be great.

If you can find an archive of the Apple II technical notes out there,
have a look for TN.IIGS.026 (in the IIGS folder).  (I have no idea
whether anyone has them online - I have the full set on my Mac's hard
drive, and I only ever accessed them on Apple's FTP site, but they
removed them several years ago.)


If you got your version numbers muddled up and were actually wondering
about the differences between ROM 01 and ROM 3, then that is a different
kettle of fish.  There have been discussions posted here on the subject
in the past, and I could dig through my archives to find one of my
earlier postings.



Apple II Technical Notes

Apple IIGS

Developer Technical Support

#26: ROM Revision Summary

Revised by: Matt Deatherage September 1989 Written by: Rilla Reynolds October 1987

This Technical Note summarizes revisions to the Apple IIGS ROM.

Changes since November 1988: Revised to cover ROM 3.

Apple currently supports two configurations of the Apple IIGS ROM, ROM 1 and ROM

3. In August 1989, Apple IIGS computers began shipping with a 256K ROM, referred to as version 3 or ROM 3 (ROM 2 was skipped since there was already enough confusion about the first version, ROM 0, and the second version, ROM 1). System Software continues to support ROM 1, but it no longer supports ROM 0. Authorized Apple dealers can upgrade older systems (i.e., machines with serial numbers lower than E704…) to ROM 1 upon request.

ROM 1 requires System Software 2.0 or later, while ROM 3 requires System Software

5.0 or later. Although applications may work using older system software releases, they may not function properly due to the coordination of system software and ROM revisions.

Changes from ROM 0 to ROM 1

ADB

  • Absolute ADB devices are now supported correctly.
  • ADB fatal system error code is now $0911 instead of $0400.
  • ADBReset routine now delays about 160 microseconds before reading the buttons.

  • ADBStatus TRUE is now $FFFF instead of $0001.

  • All ADB error codes now include the tool number.
  • SRQrmv no longer crashes when you make the call with a command pending.

    AppleDisk 3.5

  • AppleDisk 3.5 Macintosh block reads and writes now work as documented.
  • Extended status call now returns bit 0 = 1 if AppleDisk 3.5 media has been switched since the last READ, WRITE, or FORMAT.
  • New AppleDisk 3.5 status calls have been implemented to get internal variable and work buffer starting addresses.

    AppleTalk

  • Link Access Protocol (LAP) inter-packet gap now handles added SCC delay.
  • Name Binding Protocol (NBP) now considers uppercase and lowercase characters identical.
  • A nonexistent protocol no longer hangs the dispatcher.

    Desk Manager

  • SaveScreen and RestoreScreen now work.

    Event Manager

  • Now auto-key events are not posted in the queue unless the queue is empty.
  • EMStartUp and EMShutDown code has been optimized.

  • Event Manager now returns an error instead of crashing when there is an attempt to post an invalid event.

    Integer Math

    New Changes:

  • Optimized the multiply routine.

    RAM patches moved to ROM:

  • Changes to FixMul, FixRatio, and SDivide.
  • SDivide recovers from a divide by zero operation.

  • New calls: FracMul, FixDiv, FracDiv, FixRound, FracSqrt, FracCos, FracSin, FixATan2, HiWord, LoWord, Long2Fix, Fix2Long, Fix2Frac, Frac2Fix, Fix2X, Frac2X, X2Fix, X2Frac.

    Memory Manager

  • Optimized Purge and Compact for banks 0 and 1 and moved from RAM to ROM.
  • RAM patches and enhancements moved to ROM.
  • RAMdisk now returns bytes transferred count on DIB call.
  • SetHandleSize makes a handle temporarily unpurgeable while changing handle size.

    Miscellaneous Tools

    RAM patches and enhancements moved to ROM:

  • AbsClamp fixes.

  • Battery RAM routines work if data bank is set to a bank other than bank data is in.
  • Firmware entry calls now return processor status in high byte instead of low byte.
  • GetAddr with ref number $000E returns SerFlag address for SCC interrupts (useful if not using serial firmware).

  • ID manager can reuse discarded IDs.
  • Keyboard interrupts now enable VBL interrupts.
  • Munger now works with 1-char strings and returns with A=0.

  • New SysBeep call.
  • PackBytes and UnpackBytes return with A=0.

  • ReadBParam and ReadBRAM error codes corrected.

  • WriteBParam and WriteBRAM do not return error codes (this is a documentation change).

  • WriteTimeHex Bad Parameter error code is now $0301.

    Monitor

  • 80-column screens maintained if break occurs and Pascal protocol in effect.
  • AppleSoft tabbing in 80-column mode now works correctly.
  • Control Panel’s Maximum RAM Disk Size increased to 8128K instead of 4096K.
  • Firmware version number returned is $1 instead of $0.
  • Interrupts now disabled during paddle read routines.
  • Interrupts re-enabled after fatal system error (for debug DAs).
  • Mouse clamps with positive minimum and negative maximum works (e.g., $6000 min,$8000 max).
  • New monitor command, pound sign (#), installs monitor entry and memory peeker classic desk accessories (unless already installed), accessible via the Control Panel. Reinstalled automatically on reset; disabled by power off only.
  • New monitor command, Control-N, clears m, e, and x bits for native mode. (Control-R still switches to 8-bit, emulation mode.)
  • RESET entry point at $00FA62 sets state register to $0C and shadow register to $08.

  • Shadowing of the Super Hi-Res area in Bank 1 is no longer enabled automatically.
  • WAIT routine now always exits with C=1.

    QuickDraw II

    RAM patches and enhancements moved to ROM:

  • 640-mode pen masks now work when portRect origin not a multiple of 8.
  • Arcs, ovals, and round rects can be drawn across bank boundaries.
  • Changes to round drawing routines: PPToPort, GetFontLore, GetROMFont, and

    InflateTextBuffer.

  • Current bank bytes 100…106 no longer modified by scaling and mapping calls.
  • FontFlags 1 and 2 added for pen width and color control.

  • FramePoly returns with A=0.

  • GetPort returns all four bytes of GrafPort.

  • HideCursor and ShowCursor work correctly with obscured cursor.

  • MapRgn now works on rectangular regions.

  • Pixel painting routines support QuickDraw Auxiliary Tool Set stretching and shrinking.
  • PPToPort now clips correctly to the current portRect.

  • QDStartUp and QDShutDown save and restore the scan line interrupt vector.

  • RectInRgn bug fixed.

  • ScrollRect works when the ClipRgn and VisRgn are not rectangular.

  • SetSysFont works.

  • StdPixels now returns with A=0 if the pen is not visible.

  • Text underline bug fixed.
  • TextBounds works.

    New QuickDraw changes:

  • Busy flag now maintained correctly by ClosePort, OffsetRgn, InsetRgn, KillPoly, FillRect, FrameOval, PaintOval, EraseOval, InvertOval, FillOval, FrameArc, PaintArc, EraseArc, InvertArc, FillArc, FrameRRect, PaintRRect, EraseRRect, InvertRRect, and FillRRect.
  • Cursor appears in correct Super Hi-Res mode as determined by the low byte’s bit 7(320/640) of the MasterSCB.

    SANE

  • Elems now can be called from any part of memory.

  • HALT exception jumping through the incorrect vector fixed.

  • Integer overflow during conversion reported.
  • STATUS call moved to ROM.

    Scheduler

  • Scheduler now accepts a flush function call.
  • Task-handling RAM patch (on System Disk 1.0 and later) moved to ROM.

    Serial I/O

  • First character after an XON is no longer trashed when buffering is not enabled.
  • If serial mode bit 17 = 1, parity and framing error suppression are defeated.
  • Parity, baud, and data format commands work with buffering.
  • STATUS call will not report that a character is ready if the character arrives with a parity or framing error.

  • STATUS call works correctly with XON/XOFF protocol.

    SmartPort

  • PR#5, following a PR#5 with I/O error (i.e., no disk in drive), now boots as expected.

  • SmartPort manipulates only Slot 6 motor on detect so the IWM can run in fast mode.

    Sound

  • Fixed bug in FFStopSound call.
  • Fixed low-level RAM read/write bug.
  • Interrupts are disabled when the internal bell is active.
  • Interrupts no longer need to be disabled when accessing sound RAM.
  • New sound diagnostics with the following error codes: $0C001 = failed RAM data test,$0C002 = RAM address test, $0C003 = register data test, and $0C004 = control register test.
  • Sound Manager RAM patches and enhancements moved to ROM.

    Text Tools

    RAM patches moved to ROM:

  • RAM patches moved to ROM for Writing and ErrorWriting routines.
  • TextInit Illegal device error now is in 16-bit mode instead of 8.

    Tool Locator

  • Optimized tool dispatcher.
  • ROM tools present on a memory expansion card are installed.

    Changes from ROM 1 to ROM 3

    ROM 3 is 256K (double the size of ROM 1) and contains several tools which do not exist in ROM 1. The patch file TS3 fixes known bugs in ROM 3 which were discovered after it was frozen. ROM 3 tools are basically System Software 5.0 tools, and the System Software 5.0 documentation covers these tools in detail. This Note only documents non- tool changes.

    AppleDisk 3.5 and SmartPort

  • Use new routines for all block reads to fast RAM to eliminate double buffering.
  • The extended DIB status call returns the device subtype byte $C1.
  • Fixed anomalies described in SmartPort Technical Note #6, Apple IIGS SmartPort Errata.
  • Fixed a ROM 1 bug that caused Write Protected to be returned with higher priority than Device Offline for the ProDOS STATUS call.

    AppleTalk

  • AppleTalk moved to slots 1 and 2 from slot 7.

    Control Panel CDA

  • The original Options menu is now the Keyboard menu and does not contain mouse parameters.
  • A new Mouse menu is present. The new keyboard microcontroller allows finer control of mouse tracking, so a selection procedure better than yes or no is present. Parameters are also available to set the keyboard mouse feature, which allows the numeric keypad to emulate a mouse.
  • Added an option to resize the RAM disk on the next reset in the RAM Disk menu. This option resets to No after one reboot and resizing so the RAM disk is not accidently reformatted on every boot thereafter.
  • If slot 7 is set to AppleTalk, the Control Panel displays a warning if neither slot 1 nor slot 2 is similarly set.
  • The Printer Port and Modem Port menus now display only those parameters that may be changed if AppleTalk is the selection for those ports.
  • The RAM disk no longer has minimum and maximum settings, but rather one RAM disk size setting.

    Monitor

  • Enhanced memory searching commands to automatically cross bank boundaries.
  • Added Step and Trace debugging functions.
  • Now provide vectors for the same functionality as the GS/OS System Service calls

    MEMORY_MOVER, DYN_SLOT_ARBITER and SET_SYS_SPEED in bank $E1.

  • Now resize the RAM disk when the system is rebooted with the Control-Open Apple- Shift-Reset key combination.
  • Handle text page 2 shadowing and power-up bits in the new CYA chip.
  • Flash the border if the sound volume is set to zero and a beep is necessary.
  • In ROM 1 and earlier, the Miscellaneous Tools mouse firmware called the 8-bit mouse routines in the $C400 space to do the work. In ROM 3, the 8-bit routines call the 16-bit routines to read the hardware. This change effectively means those programs which use 16-bit mouse calls (including desktop applications through the Event Manager) may use the mouse when slot 4 is set to Your Card.
  • Slots 1 and 2 may now be set to Printer, Modem, AppleTalk, or Your Card. With System Software 5.0, slot 7 does not need to be set to AppleTalk to use an AppleTalk network, although one can do it for compatibility. There is no transparent printing firmware in slot 7.
  • The Alternate Display Mode CDA no longer sets the system to fast speed when normal speed is selected in the Control Panel.
  • Added a new command, {val}=V, to set the video screen display I/O switches when resuming a program.
  • Control-T command now works as a toggle—executing it once changes to text mode, but now executing it again switches back to the previous video mode You may change this saved video mode with the =V command.
  • Battery RAM value $59 now controls the presence of the Visit Monitor and Memory Peeker CDAs. If this byte has the high bit set at boot time, the CDAs are automatically installed.
  • The Monitor and Memory Peeker both allow the use of Control-X to terminate a long display (i.e., a handle list or memory dump).

    Serial I/O

  • XON and XOFF are no longer sent with the high bit set when buffering is enabled.
  • Terminal mode cursor is more consistent with the rest of the system.
  • Extended Interface calls now return errors in the carry and the accumulator.

    Toolbox

    The following tools are now in ROM:

    • Window Manager
    • Menu Manager
    • Control Manager
    • Line Edit
    • Dialog Manager
    • Scrap Manager
    • Font Manager
    • List Manager

      Further Reference

  • Apple IIGS Firmware Reference

Incorporating Passport by 4am into my workflow for archiving Apple II software with pictures

Incorporating Passport by 4am into my workflow for archiving Apple II software with pictures

This post will:

  • Answer if I still need an Essential Data Duplicator (EDD) card to continue my efforts in preserving Apple II software from 5.25″ media
  • Outline how I use Passport by 4㏂
  • How the Floppy Emu can be incorporated in the process to more efficiently create disk images
  • New titles since the first 66 titles were published

The EDD card is known to me as a card for your slotted Apple II that has the Disk II cable pass through the EDD card on it’s way to the disk controller. Using the up to date software “I’m fEDDup“, one can capture a file containing disk information which retains the original sector structure.  A CFFA3000 is used with a ProDOS partition to save the files for sneaker net transfer to a modern computer.  

Up until the release of Passport, EDD disk images were distributed online to a select few who could apply their talents to removing the embedded copy protection from each image and release the software as cleanly cracked.  That is the disk image is compatible in an emulator and no longer contains routines to stop the loading of the software due to protections.

The presents a problem for the following reasons:

  • EDD backups are slow at ~18 minutes per disk on a stock speed IIe
  • The person doing the backing up doesn’t have a working solution until someone online cracks it
  • Cost involved with sourcing an EDD card and possibly a ZIP Chip or Transwarp accelerator to greatly improve the speed of EDD backups.  
  • Highly specific hardware required means an investment in an EDD card and accelerator which I personally was struggling to justify 
  • Hardware required can be difficult to source

Having said that clearly people to consider the costs involved for a EDD backups system to be justified, with users groups such as Apple II Australia even suggesting the idea of having an EDD card on rotation for members to use.  Time is still a problem here considering an unprotected disk can practically fly through ADTPro in 30 seconds, facing 18 minutes just to capture the disk alone is a hard sell.

The solution is here, available now and working – use Passport by 4am and your choice of 5.25″ disk emulator such as the Floppy Emu which I use and other solutions like Unisdisk and CFFA3000.  Passport does not format while it writes to the disk which is key to Floppy Emu compatibility and possibly other devices.

You can get around having a floppy drive emulator by using two disk drives and ADTPro to transfer the cracked disk to an image which in my experience works equally as well as writing direct to the Floppy Emu.

Disks now successfully backed up that previously failed are at the time of writing:

  1. Fish Scales – Designed by Neosoft, Published by DLM in 1985
  2. Facemaker – by Spinnaker Software DesignWare in 1982
  3. The First Fleet Convict Database – Distributed by Information Technology Week Committee in conjection with The Elizabeth Computer Centre and Gemini Software in 1982
  4. Scholastic Microzine 7
  5. Epyx Summer Games II

My hardware is:

  • Apple IIe, re-capped ASTEC power supply
  • AppleColor Composite Monitor IIe
  • Slot (S) 1 Apple Super Serial Card
  • S2 Apple IIe mouse interface
  • S3 Apple IIe 80 column/64K Memory Expansion and Video
  • S4 Empty
  • S5 Empty
  • S6 Apple 5.25″ Disk controller connected to the DuoDisk
  • S7 Apple 5.25″ Disk controller connected to Big Mess of Wire’s Floppy Emu

To get Passport by 4㏂ running on a setup similar to mine, you’ll need to modify the supplied 819kb .2mg file so it fits into a 140kb disk image for compatibility with the 5.25″ disk controller card.  Passport’s binary and system file are the core files one needs to keep, deleting the source code in CiderPress to trim down the disk image.  I have done this already and I now link to a ready to run 140kb disk image

Here are the steps to take an original copy protected disk into a disk image I use:

  1. Prepare your working disk.  I use a blank 140kb disk image file duplicated with the file name changed to the title of the software I’m backing up.  Or have a formatted 5.25″ floppy disk in Drive (D) 2
  2. Boot my 140kb version of Passport on your Apple II using your method of choice such as disk emulation or ADTPro
  3. Insert your original disk to drive one
  4. Eject the Passport disk image and mount the blank image file you made with the matching file name to the original disk
  5. Configure your target slot and drive, for me I have to press the “S” key once to change the target to: S7,D1 – the Floppy Emu.  My source is S6,D1 – the DuoDisk
  6. Press the “C” key and watch the magic happen.  While the realtime copy and copy protection removal occurs you may like to take notes of what Passport is doing on screen for documentation purposes.
  7. Either repeat steps 4 to 6 or reboot your Apple II to see if the copy boots as expected.

Best practice in making disk images involves cleaning of your drive heads as required. I have cleaned my drive heads with a cotton bud dipped in alcohol and now use a Memorex branded disc drive head cleaner floppy.  If you are getting read errors for some reason, clean your drive heads.

I visually inspect the exposed disk section of a floppy before inserting it looking for surface changes.  If it looks like there is a coating or any deterioration of the surface there is a good chance you’ll transfer some of that to your drive.

By all means get in contact if you have any questions.  Jeremy Barr-Hyde can be contacted by email or Twitter direct message.

Here are some example photos of me indulging:

20160724_21492820160725_17035520160725_19251220160725_193206

https://archive.org/download/Passport4am …

https://twitter.com/a2_4am

Serial ADTPro communication

Subjects covered in this post:
Mac OS X serial drivers
Serial cables
ADTPro
I don’t know about you but I was raised to make use of what you had, and if you had fun along the way then you’d learned something.  I certainly did, with this blog post spelling out where I had troubles establishing a working serial connection between any of my laptops and the Apple Super Serial Card.  I could have spent money on the suggested cables and adaptors or even splurged on an Uthernet II

This post may be a tedious read and is intended more for documentation should someone have connectivity issues like I did that are not addressed in the excellent ADTPro website. I referred to this website countless times and if you’re going down the same path you will too.

Serial communication on Mac OS X 10.11 El Capitan, where to begin.  I had two USB to Serial adapters in the collection, a silver Dolphin Peripherals and a more solid-looking one with no label.  The Dolphin Peripherals seemed the better choice (wrong) as it had an LED indicator light and a model number.  My mac wouldn’t recognise the device as a serial port so I set about finding drivers.

Details:
Dolphin USB to Serial Adapter
Model No: XH6451
Chipset:  FT8U232AM

The fact that Mac OS X supports an extreme range of printers with over 168 pages of drivers drivers, it does not include built in support for once common chipsets as made by Prolific and FTDI.

Fun fact: Mac OS X lists my serial device as both, like “/dev/tty.usbserial-A700dYoR” and “/dev/cu.usbserial-A700dYoR.  Keith Kaisershot explains that “tty” == TeleTYpe and “cu” == “Calling Unit.  Martin Crockett further elaborates “tty is the traditional Unix name for serial ports as in to connect a serial terminal. cu is also a serial port but traditionally used to connect two systems together, a bit like ADTPro connections.”
I was able to find Mac drivers thanks to this Whirlpool Forum thread which support PowerPC-based Apple computers.  No worries I thought – after all one of the great advantages to having an Apple computer collection is being able to walk over to shelf and pick out the model I need, where I chose an iBook G4 running 10.5.5 and installed the drivers which worked as ADTPro would recognise it as TTY or CU serial port.

There is a glitch though – reboot the computer and the serial port is lost.  A technical note I found explains
2. The device cannot be accessed after the computer has
rebooted.

The background to this problem is that FTDIUSBSerialDriver has a dependency on com.apple.iokit.IOSerialFamily.  This is an Apple driver and it is not a Root driver.  This means
that at “root” (boot) time, the driver’s dependencies cannot be satisfied, and the driver does not participate in the extension loading process.

Apple’s position on this problem is as follows :-

“Apple will not (for the foreseeable future) be able to provide a root version of com.apple.iokit.IOSerialFamily.  It depends on other components that are not available at boot time.”

This presented a serious annoyance as ADTPro could crash (for me) if the disk transfer was interrupted on the Apple IIe which was happening randomly.  I would have to hard reboot the iBook and reinstall the driver every time.  This situation was almost enough for me to give up on the idea as it also meant I had to have another computer on my computer desk for at least as long as it took to image the educational software I had.   I decided to keep using the iBook and Dolphin serial adapter with the limitations for the time being.

20160713_125146
Note: I even went as far as swapping my SSC for a spare which was an earlier revision.
Moving on to connecting the Apple Super Serial Card (SSC) to the USB Serial adapter.  The SSC uses a DB-25F (25-pin female) port and the USB serial adapter a DB-9M (9-pin male).  I went to storage tub which had a DB-9M to DB-9F cable in new condition and a DB25 to DB9 converter.  This was supposed to be the solution – all the plugs fitted and it wasn’t uncommon to use a solution like this with a modem as I had experienced all those years ago when dialup was a thing.

I had the cable, working serial port, and ADTPro server software ready.  Nothing I tried could get the ADTPro client software running on a real Apple IIe to talk to the Macbook.  I blamed the USB Serial adapter and grabbed a Dell Precision laptop with 32-bit Windows XP on it and a real COM port.  What a time suck.  Would you believe the laptop was running Windows XP Service Pack 2 and Java needs service pack 3?  Would you believe the Microsoft support page for downloading a network install .exe of SP3 redirects to a Windows 10 upgrade page?

Needless to say I persevered like I always do and found a slow mirror for XP SP3 and installed the latest version of Java for XP.  Updates completed I ran ADTpro, connected up the Apple II to the ‘real ‘ COM port expecting things to finally work.  They didn’t.  Same problem as before – no communication between the Apple IIe and computer.

I wrote to the Apple ][ Australia mailing list to basically debrief my frustration and see what trouble shooting options I had.

At this point I considered anyone who had ADTPro working a magician as I had tried everything I could, and decided to walk away from the project for a few days to regroup.  A new cable and adapter from the USA possibly offered a solution but the thought of buying another serial cable and the postage costs to Australia pointed me back to doing things the hard way and using what I had

I decided a new cable was needed and went to a local charity store where I found a  direct DB-25 to DB-9 cable.  Plugged it into the Dell Precision and ADT worked immediately.  The literal second I chose the Bootstrap option that text flew across my IIe screen!

Finally a working solution.  It was the cable the whole time, or more specifically an incompatible DB-25 ->DB-9 adapter.  Feeling energised I went back into a storage tub to just see what the other USB-Serial adapter was like.

Believe it or not, it was the very adapter ‘the interwebs’ suggest as the very best for Mac OS X compatibility – a Prolific 2303.  The first result in Google gave me appropriate drivers for 10.11 which worked, so armed with the right serial cable AND the best USB to Serial adapter I set to work making a spreadsheet to appropriately document the floppy disks and feeding them through my DuoDrive (cleaning the drive heads every so often of course!).

You’ve read this far to learn a genuine Prolific 2303 chipset-based adapter is failsafe thanks to current supported drivers and use only direct 25-pin to 9-pin cable to the Apple SSC.

Re-creating Macintosh accelerator badges

This post has taken me a while to edit but I hope this inspires people to have a go.

Obviously credit must go to OlePigeon for supplying the AI files freely: https://68kmla.org/forums/index.php?app=core&module=attach&section=attach&attach_id=8634

Render the AI to your paper size at 1200dpi

Set your printer settings to be the best they can be. Experiment with say dither settings to ensure a sharp print, I use ‘Chart/Graphics’.

Use a guillotine to slice out a few then trim by hand or use scissors.

If you apply a gloss to them like I did, either use a sharp blade to separate the label from the gloss or keep the margin so you can peel.

I am a perfectionist but I also don’t like waste.  The labels shown in my pictures were from the very first run and I’ve since gotten better at the sizing for A4 and the best way to trim the labels out.

Badges Accelerators by hand 68KMLABadges Accelerators by hand 68KMLA1

Compact Flash adapters for vintage computing

Compact Flash (CF) cards provide a cheap, silent and accessible alternative to Integrated Drive Electronics (IDE) hard drives. Prices for CF -> IDE adapters start from $2.50 at DealExtreme where you have options for 40-pin (Desktop), 44-pin (Laptops).  As the CF interface is based on IDE, with a simple adapter you can add a solid state drive to your favourite vintage computer!

Common adapter options are:

The above four options should cover most bases and I own one of each to suit various computers.  If you don’t have access to spare CF cards I can suggest a Disk On Module (DOM) product such as the LeiDisk.  A DOM will give you the afore mentioned benefits that CF adapters bring with built in storage.

I have used CF IDE adapters in a 386 and Pentium 1 DOS gaming computer to great success.  Power On Self Test (POST) sequences fly through as there are now no moving parts to wait for – the boot record can be seen immediately then loaded.  Games which would cause the hard disk to hunt around just to load loading and decompressing game assets are now loading in half the time!

I mentioned accessibility as a key feature of using a CF IDE solution becuase you can easily remove the card and read it on a modern computer using a simple USB card reader.  This means no fussing about with floppy disks, instead you can drag and drop your latest DOS game onto the CF card, put it back in the vintage computer and boot.  This is also helpful when installing files from a CD such as sound card drivers on a computer with no support for CD ROM drives.

So we know the PC realm handles CF well, but what about Macintosh?  Turns out we’re in luck!  Excellent candidates for these adapters are the IDE based PowerBooks such as the 1400c and G3.  I certainly remember the slow laptop hard drives whirring away, clicking to park the heads etc.  All that noise, sluggish performance and power requirements are solved by a simple CF card.  Remember that these laptops are quite old and can get away with using regular speed cards – I would expect some freezing or lag on a G4 PowerBook.  But for Mac OS 9 they are ideal!  You have two options – take the easy route and use a PCMCIA PC Card -> CF adapter and copy your System folder over to dual boot.  Or you can take it a step further and replace the hard drive.  General steps involve:

  1. Boot the PowerBook from the internal drive and insert the PC Card adapter with the CF card you’d like to use
  2. Initialise the card using Drive Setup
  3. Drag your entire ‘Macintosh HD’ onto the CF card
  4. Bless the system folder by opening the System folder on the CF card, getting info on the System file (CMD+I) then closing the windows
  5. Reviewing the Apple Service PDF for your PowerBook model to read how to safely remove the keyboard etc to gain access to the internal drive bay
  6. Remove the old hard drive, mount in the CF card and suitable 44-pin adapter (see the second option above)
  7. Boot your new silent SSD!

Elfen from 68KMLA forums suggests “Another thing is when using the IDE Bus, you have to use a Single CF to IDE Adapter. Those adapters with Dual CFs will not work on the Powerbooks for some reason”.  Alex Roddie has posted detailed guide on booting a PowerBook using a CF solution here.

What better way to use up old CF cards than to bring your vintage machines to life with this easy project!