Subscribe via RSS
1Mar/210

Sony VAIO PCG-Z505R – Booting From The PCMCIA Drive

This has always been on the wish-list and one appear on a Facebook group recently. It came with an external CD drive, but no power adapter. Fortunately, third-party adapters are easy to find on eBay and one arrived in no time at all. A port replicator also then arrived as someone was selling one for cheap and, honestly, there's no competition as no one else has a Unicorn laptop that needs one!

DSC02310

Such a nice design. The colour instantly tells you it's a Vaio.

Cosmetic Issues

The unit wasn't without its flaws. Both screen hinge covers were loose in the packaging when it arrived. The main issue is that the tab/lugs have been partially destroyed. The bases where they're meant to click in are also unhealthy.

DSC02312 DSC02316 DSC02318

The right pillar between the main base of the laptop and the screen hinge is also in a bad way. The plastic shell has actually been glued down as, presumably, the clips holding it down have also been erroneously removed. It also looks like a washer or coin was sitting on the speaker and the unit was then closed, creating a circular impression in the plastic. The speakers are also a little distorted on low volume. I must admit, the seller never mentioned any of this. Finally, the unit, all around, has dints and scratches... but, well, wouldn't I just do the same damage to it if it was in my care anyway?

Installing Win98SE

The unit came with XP installed, but it wasn't running as quickly as I'd like. The unit only had 128mb RAM, so I opted for Win98SE. The CD started booting from the external drive, but the base OAK/ASPI drivers couldn't find the CD-ROM! I then realised that Sony's PCG-CD51A External PCMCIA CD-ROM Drive is proprietary (not really surprising for Sony!) and doesn't work with generic drivers.

Instead, use this boot disk and burn it to a CD as the boot image, with the win98 folder as the guts. If you try to roll your own, you may get the following error:

DSC01561

Just for search results, let's represent it as text:

The following file is missing or corrupted: VA16CD.SYS
There is an error in your CONFIG.SYS file on line 3

VA16CD.SYS Corrupt or missing!? The file is on the boot disk, and when booting from a USB floppy with the standard PCG-CD51A boot disk, it'll work fine. Once you try to burn that img as a boot floppy to a CD image, it will fail miserably.

The point is that, as soon as you load the VA16365.SYS driver, it re-initialises the PCMCIA bus and throws A:\ in the bin. A:\ was virtual anyway, being the boot floppy image on the CD, and so when the boot disk then tries to load, A:\ is no longer accessible! Instead, I hacked around with CONFIG.SYS and AUTOEXEC.BAT to load the drivers later.

Going into a little more detail, VA16CD.SYS needs to be loaded in CONFIG.SYS and requires that VA16365.SYS be loaded first. Of course, if you do that, A:\ disappears and then CONFIG.SYS fails trying to find VA16CD.SYS as it continues to load. I tried a lot of things to prevent VA16365.SYS from trashing the boot-disk access, but nothing worked... it really seems to want to re-init the PCMCIA bus.

I then managed to find a work-around! I crafted a boot image that uses DEVICE.COM from QEMM to load the SYS drivers later. With the SYS driver files skipped in CONFIG.SYS, the boot process gets to AUTOEXEC.BAT and the standard RAM drive is initialised as per the Win98SE boot disk. Once up, I then copy everything from A:\ over to it, switch to it and then proceed to load the SYS files via DEVICE.COM and then MSCDEX.

DSC02304

It works, but there's a caveat! You'll get errors that A:\ is missing as it's still in the path... oh... maybe I should unset it from the path. Anyway, the image above will let you boot from the Sony PCG-CD51A PCMCIA CD-ROM. Just hit F when the failure message comes up and switch to D:\ or E:\ to start the install.. fdisk... file-copy, etc...

I installed Win98SE from C:\WINSETUP. When it booted, all the drivers were missing, so I tried to install Red Hat instead.

Linux for a PII-366 w/ 128mb RAM

I found a link to another Sony laptop where the user had installed Red Hat Linux 7.2 with a CDE-style WM known as DeXtop. Of course, trying to find Red Hat Linux (not Enterprise!) nowadays is a pain since they chose to rename/reuse the name/numbering for the new versions. I first checked Winworld PC, but they only had v5.0. Looking closer, you'll see a link to Red Hat's Linux Archive and from there, you can find the ISOs for Red Hat Linux 7.2. But those links don't work, so get the ISOs from here.

DSC02330

I then failed to get it even installed as it seems the laser in my external PCMCIA drive is failing miserably. Somehow, I had another PCG-CD51A in my PCMCIA junk box! Same CD error though!? Let's re-burn with a different CDR brand and the slowest speed.

Finally installed, why is it trying to initialise ETH0 on each boot? Oh shite, there's actually an ethernet adapter inside, but I'm missing the dongle?

z505r-ethernet

There is no actual option to disable it in the BIOS, so we'll have to disable it at startup script located in /etc/system/network-scripts edit the ifcfg-eth0 file and change ONBOOT to no.

Next, no sound. Video was nicely initialised, but audio just didn't work. Turns out this thing has a NeoMagic 256AV Sound device and people already have workarounds. Turns out all it actually needed was for me to run sndconfig!

Finally, I tried a PCMCIA Ethernet card. I had a Laneed nearby, but there was no off-the-shelf driver, so without networking I gave up on RH7.2 from there.

I was about to just give up, but then tried to configure WiFi. I had already purchased some really old/compatible cards for the eMate. These should surely work with Red Hat? One is a legit Linksys/Cisco Orinoco/Wavelan, so it must just work... Supposedly I can just run the neat command and set everything up?

DSC02363

It worked pretty well. The first was a Linksys WPC11, but it just wouldn't associated with my guest network access point. The eMate did though! Maybe this thing is way too old, being a REV 1. I'll have to do some more digging and work out how to correctly set up WiFi. This can go back in the box for now.

Filed under: Vaio No Comments
26Feb/210

Emulating An AppleTalk Network

Up until this point, I've always had minimal success getting Chooser to show other computers on my home network. Sure, the other computers aren't Apples and, even if they were, they were running OSX or higher. The main reason behind the lack of connectivity has been that, at some point in the past, Apple switched from AppleTalk being it's own protocol to using AppleTalk over TCP/IP.

Along with this, Netatalk also switched, from version 3.0, to not supporting the 'old' AppleTalk mechanism. Any time you installed A2SERVER or even tried to manually install Netatalk on a recent distro, you'd get a version of 3.0 or higher and therefore only have connectivity from machines that supported AppleTalk over TCP/IP. Hence why I could use the "Server IP Address..." on my PowerCenter 180 running OS 9.1.

Well, I was jack of this. I now have a PowerBook, an eMate, a (dead) Macintosh Classic and a soon-to-boot-up-once-I-receive-the-video-adapter-cable Power Macintosh 9100/66. For all of this, I wanted a single fileshare from my NAS that had all the basics available.

Of course, my NAS also only had a Netatalk package that was 3.1.something. I googled around but really wasn't keen to try and downgrade everything to get a v2.x of Netatalk running. It also seems that the kernel needs atalkd built-in, or at least loadable... and I wasn't ready to find out if it was available or not.

Spare Raspberry Pi II to the rescue!

I have accumulated a few of these by now. Every (thanks Carlos) AppleTalk (thanks mark_paterson!) tutorial (thanks marmanold!) that I then dug up tells you straight away to use an older version of Raspbian. I nearly trashed my main Plex/Webcam serving Pi by installing crap as it was on Buster and the install scripts were doing bad things.

Even A2SERVER for Pi's instructions don't work anymore as they don't tell you that the latest-and-greatest BUSTER release is BUSTED for atalkd.

So, the goal is to follow all steps in the prior tutorials, using an older version of Raspbian that'll match what was expected back then. I ended up following mark_paterson's tutorial on reddit and started by downloading and 'burning' the Raspbian Stretch image.

Once up, you'll need console access to enable SSH. From there, just start copying and pasting the instructions!

Firstly, log in and update all packages...

pi@192.168.1.121's password:
Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Feb 26 04:50:30 2021

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set                                                                              a new password.

pi@raspberrypi:~ $ sudo su -

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

root@raspberrypi:~# apt-get update && apt-get upgrade
Get:1 http://archive.raspberrypi.org/debian stretch InRelease [25.3 kB]
Get:2 http://raspbian.raspberrypi.org/raspbian stretch InRelease [15.0 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages [11.7 MB]
Get:4 http://archive.raspberrypi.org/debian stretch/main armhf Packages [192 kB]
Get:5 http://archive.raspberrypi.org/debian stretch/ui armhf Packages [44.6 kB]
Get:6 http://raspbian.raspberrypi.org/raspbian stretch/contrib armhf Packages [56.9 kB]
Get:7 http://raspbian.raspberrypi.org/raspbian stretch/non-free armhf Packages [98.9 kB]
Fetched 12.1 MB in 17s (696 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  apt apt-transport-https apt-utils base-files bind9-host ca-certificates curl dbus e2fslibs e2fsprogs file gettext-base libapt-inst2.0 libapt-pkg5.0
  libbind9-140 libbsd0 libcomerr2 libcurl3 libcurl3-gnutls libdbus-1-3 libdns-export162 libdns162 libexpat1 libfreetype6 libfreetype6-dev libglib2.0-0
  libglib2.0-data libgnutls30 libgssapi-krb5-2 libicu57 libidn11 libisc-export160 libisc160 libisccc140 libisccfg140 libjpeg62-turbo libk5crypto3 libkrb5-3
  libkrb5support0 libldap-2.4-2 libldap-common libluajit-5.1-common liblwres141 libmagic-mgc libmagic1 libnghttp2-14 libp11-kit0 libpam-systemd libperl5.24
  libpng-dev libpng-tools libpng16-16 libpython2.7-minimal libpython2.7-stdlib libpython3.5 libpython3.5-minimal libpython3.5-stdlib libraspberrypi-bin
  libraspberrypi-dev libraspberrypi-doc libraspberrypi0 libsasl2-2 libsasl2-modules libsasl2-modules-db libsqlite3-0 libss2 libssh2-1 libssl1.0.2 libssl1.1
  libsystemd0 libudev1 libwbclient0 libx11-6 libx11-data libxml2 luajit nfs-common openssh-client openssh-server openssh-sftp-server openssl patch perl
  perl-base perl-modules-5.24 python-apt-common python2.7 python2.7-minimal python3-apt python3.5 python3.5-minimal raspberrypi-bootloader
  raspberrypi-kernel raspi-config rsync samba-common ssh sudo systemd systemd-sysv tzdata udev unzip usbutils vim-common vim-tiny xxd
107 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 133 MB of archives.
After this operation, 7,921 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://archive.raspberrypi.org/debian stretch/main armhf libraspberrypi-doc armhf 1.20190819~stretch-1 [31.4 MB]
Get:2 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf base-files armhf 9.9+rpi1+deb9u13 [67.7 kB]
Get:3 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf e2fslibs armhf 1.43.4-2+deb9u2 [194 kB]
Get:4 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf e2fsprogs armhf 1.43.4-2+deb9u2 [910 kB]
Get:5 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libperl5.24 armhf 5.24.1-3+deb9u7 [2,815 kB]
Get:6 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf perl armhf 5.24.1-3+deb9u7 [218 kB]
Get:7 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf perl-base armhf 5.24.1-3+deb9u7 [1,198 kB]
Get:8 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf perl-modules-5.24 all 5.24.1-3+deb9u7 [2,723 kB]
Get:9 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libapt-pkg5.0 armhf 1.4.11 [833 kB]
Get:10 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libapt-inst2.0 armhf 1.4.11 [189 kB]
Get:11 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf apt armhf 1.4.11 [1,190 kB]
Get:12 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf apt-utils armhf 1.4.11 [392 kB]
Get:13 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf dbus armhf 1.10.32-0+deb9u1 [193 kB]
Get:14 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libdbus-1-3 armhf 1.10.32-0+deb9u1 [176 kB]
Get:15 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libexpat1 armhf 2.2.0-2+deb9u3 [62.4 kB]
Get:16 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf systemd-sysv armhf 232-25+deb9u12 [82.5 kB]
Get:17 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpam-systemd armhf 232-25+deb9u12 [175 kB]
Get:18 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libsystemd0 armhf 232-25+deb9u12 [259 kB]
Get:19 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf systemd armhf 232-25+deb9u12 [2,222 kB]
Get:20 http://archive.raspberrypi.org/debian stretch/main armhf libraspberrypi-dev armhf 1.20190819~stretch-1 [407 kB]
Get:21 http://archive.raspberrypi.org/debian stretch/main armhf raspberrypi-kernel armhf 1.20190819~stretch-1 [35.4 MB]
Get:22 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf udev armhf 232-25+deb9u12 [1,072 kB]
Get:23 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libudev1 armhf 232-25+deb9u12 [121 kB]
Get:24 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libidn11 armhf 1.33-1+deb9u1 [112 kB]
Get:25 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libbsd0 armhf 0.8.3-1+deb9u1 [88.2 kB]
Get:26 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libwbclient0 armhf 2:4.5.16+dfsg-1+deb9u3 [122 kB]
Get:27 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python2.7 armhf 2.7.13-2+deb9u4 [286 kB]
Get:28 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpython2.7-stdlib armhf 2.7.13-2+deb9u4 [1,829 kB]
Get:29 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python2.7-minimal armhf 2.7.13-2+deb9u4 [1,181 kB]
Get:30 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpython2.7-minimal armhf 2.7.13-2+deb9u4 [390 kB]
Get:31 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libsqlite3-0 armhf 3.16.2-5+deb9u3 [493 kB]
Get:32 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libssl1.1 armhf 1.1.0l-1~deb9u3 [1,120 kB]
Get:33 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpython3.5 armhf 3.5.3-1+deb9u3 [1,169 kB]
Get:34 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python3.5 armhf 3.5.3-1+deb9u3 [231 kB]
Get:35 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpython3.5-stdlib armhf 3.5.3-1+deb9u3 [2,092 kB]
Get:36 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python3.5-minimal armhf 3.5.3-1+deb9u3 [1,440 kB]
Get:37 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpython3.5-minimal armhf 3.5.3-1+deb9u3 [568 kB]
Get:38 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf samba-common all 2:4.5.16+dfsg-1+deb9u3 [175 kB]
Get:39 http://archive.raspberrypi.org/debian stretch/main armhf libraspberrypi-bin armhf 1.20190819~stretch-1 [338 kB]
Get:40 http://archive.raspberrypi.org/debian stretch/main armhf libraspberrypi0 armhf 1.20190819~stretch-1 [843 kB]
Get:41 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf openssh-sftp-server armhf 1:7.4p1-10+deb9u7 [32.9 kB]
Get:53 http://archive.raspberrypi.org/debian stretch/main armhf raspberrypi-bootloader armhf 1.20190819~stretch-1 [3,581 kB]
Get:54 http://archive.raspberrypi.org/debian stretch/ui armhf raspi-config all 20190423 [20.4 kB]
Get:42 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libcomerr2 armhf 1.43.4-2+deb9u2 [63.4 kB]
Get:43 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libgssapi-krb5-2 armhf 1.15-1+deb9u2 [132 kB]
Get:44 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libkrb5-3 armhf 1.15-1+deb9u2 [264 kB]
Get:45 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libkrb5support0 armhf 1.15-1+deb9u2 [58.2 kB]
Get:46 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libk5crypto3 armhf 1.15-1+deb9u2 [115 kB]
Get:47 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libssl1.0.2 armhf 1.0.2u-1~deb9u4 [902 kB]
Get:48 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf openssh-server armhf 1:7.4p1-10+deb9u7 [301 kB]
Get:49 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf openssh-client armhf 1:7.4p1-10+deb9u7 [701 kB]
Get:50 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf ssh all 1:7.4p1-10+deb9u7 [189 kB]
Get:51 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libss2 armhf 1.43.4-2+deb9u2 [66.8 kB]
Get:52 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf tzdata all 2021a-0+deb9u1 [281 kB]
Get:55 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf vim-tiny armhf 2:8.0.0197-4+deb9u3 [338 kB]
Get:56 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf xxd armhf 2:8.0.0197-4+deb9u3 [132 kB]
Get:57 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf vim-common all 2:8.0.0197-4+deb9u3 [159 kB]
Get:58 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libicu57 armhf 57.1-6+deb9u4 [7,427 kB]
Get:59 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libxml2 armhf 2.9.4+dfsg1-2.2+deb9u3 [805 kB]
Get:60 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf bind9-host armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [231 kB]
Get:61 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libisc160 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [366 kB]
Get:62 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libdns162 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [952 kB]
Get:63 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libisccc140 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [197 kB]
Get:64 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libisccfg140 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [216 kB]
Get:65 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libbind9-140 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [204 kB]
Get:66 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf liblwres141 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [210 kB]
Get:67 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf file armhf 1:5.30-1+deb9u3 [63.7 kB]
Get:68 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libmagic1 armhf 1:5.30-1+deb9u3 [105 kB]
Get:69 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libmagic-mgc armhf 1:5.30-1+deb9u3 [222 kB]
Get:70 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf gettext-base armhf 0.19.8.1-2+deb9u1 [117 kB]
Get:71 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libp11-kit0 armhf 0.23.3-2+deb9u1 [94.7 kB]
Get:72 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libgnutls30 armhf 3.5.8-5+deb9u5 [825 kB]
Get:73 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libsasl2-modules-db armhf 2.1.27~101-g0780600+dfsg-3+deb9u1 [67.0 kB]
Get:74 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libsasl2-2 armhf 2.1.27~101-g0780600+dfsg-3+deb9u1 [98.3 kB]
Get:75 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libldap-common all 2.4.44+dfsg-5+deb9u8 [86.2 kB]
Get:76 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libldap-2.4-2 armhf 2.4.44+dfsg-5+deb9u8 [196 kB]
Get:77 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf nfs-common armhf 1:1.3.4-2.1+deb9u1 [204 kB]
Get:78 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf patch armhf 2.7.5-1+deb9u2 [99.6 kB]
Get:79 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libnghttp2-14 armhf 1.18.1-1+deb9u1 [68.1 kB]
Get:80 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libssh2-1 armhf 1.7.0-1+deb9u1 [126 kB]
Get:81 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libcurl3-gnutls armhf 7.52.1-5+deb9u13 [260 kB]
Get:82 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf apt-transport-https armhf 1.4.11 [166 kB]
Get:83 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf openssl armhf 1.1.0l-1~deb9u3 [714 kB]
Get:84 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf ca-certificates all 20200601~deb9u1 [160 kB]
Get:85 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf curl armhf 7.52.1-5+deb9u13 [221 kB]
Get:86 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libcurl3 armhf 7.52.1-5+deb9u13 [262 kB]
Get:87 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libisc-export160 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [315 kB]
Get:88 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libdns-export162 armhf 1:9.10.3.dfsg.P4-12.3+deb9u8 [768 kB]
Get:89 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpng-tools armhf 1.6.28-1+deb9u1 [130 kB]
Get:90 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpng-dev armhf 1.6.28-1+deb9u1 [232 kB]
Get:91 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libpng16-16 armhf 1.6.28-1+deb9u1 [263 kB]
Get:92 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libfreetype6-dev armhf 2.6.3-3.2+deb9u2 [5,757 kB]
Get:93 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libfreetype6 armhf 2.6.3-3.2+deb9u2 [384 kB]
Get:94 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libglib2.0-0 armhf 2.50.3-2+deb9u2 [2,528 kB]
Get:95 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libglib2.0-data all 2.50.3-2+deb9u2 [2,517 kB]
Get:96 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libjpeg62-turbo armhf 1:1.5.1-2+deb9u1 [110 kB]
Get:97 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf luajit armhf 2.0.4+dfsg-1+deb9u1 [175 kB]
Get:98 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libluajit-5.1-common all 2.0.4+dfsg-1+deb9u1 [36.8 kB]
Get:99 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libsasl2-modules armhf 2.1.27~101-g0780600+dfsg-3+deb9u1 [95.6 kB]
Get:100 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libx11-data all 2:1.6.4-3+deb9u3 [291 kB]
Get:101 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libx11-6 armhf 2:1.6.4-3+deb9u3 [683 kB]
Get:102 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python-apt-common all 1.4.3 [94.2 kB]
Get:103 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf python3-apt armhf 1.4.3 [161 kB]
Get:104 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf rsync armhf 3.1.2-1+deb9u2 [356 kB]
Get:105 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf sudo armhf 1.8.19p1-2.1+deb9u3 [1,031 kB]
Get:106 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf unzip armhf 6.0-21+deb9u2 [151 kB]
Get:107 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf usbutils armhf 1:007-4+deb9u1 [226 kB]
Fetched 133 MB in 1min 10s (1,885 kB/s)
Reading changelogs... Done
Extracting templates from packages: 100%
Preconfiguring packages ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../base-files_9.9+rpi1+deb9u13_armhf.deb ...
Unpacking base-files (9.9+rpi1+deb9u13) over (9.9+rpi1+deb9u8) ...
Setting up base-files (9.9+rpi1+deb9u13) ...
Installing new version of config file /etc/debian_version ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../e2fslibs_1.43.4-2+deb9u2_armhf.deb ...
Unpacking e2fslibs:armhf (1.43.4-2+deb9u2) over (1.43.4-2) ...
Setting up e2fslibs:armhf (1.43.4-2+deb9u2) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../e2fsprogs_1.43.4-2+deb9u2_armhf.deb ...
Unpacking e2fsprogs (1.43.4-2+deb9u2) over (1.43.4-2) ...
Setting up e2fsprogs (1.43.4-2+deb9u2) ...
update-initramfs: deferring update (trigger activated)
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../libperl5.24_5.24.1-3+deb9u7_armhf.deb ...
Unpacking libperl5.24:armhf (5.24.1-3+deb9u7) over (5.24.1-3+deb9u5) ...
Preparing to unpack .../perl_5.24.1-3+deb9u7_armhf.deb ...
Unpacking perl (5.24.1-3+deb9u7) over (5.24.1-3+deb9u5) ...
Preparing to unpack .../perl-base_5.24.1-3+deb9u7_armhf.deb ...
Unpacking perl-base (5.24.1-3+deb9u7) over (5.24.1-3+deb9u5) ...
Setting up perl-base (5.24.1-3+deb9u7) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../perl-modules-5.24_5.24.1-3+deb9u7_all.deb ...
Unpacking perl-modules-5.24 (5.24.1-3+deb9u7) over (5.24.1-3+deb9u5) ...
Preparing to unpack .../libapt-pkg5.0_1.4.11_armhf.deb ...
Unpacking libapt-pkg5.0:armhf (1.4.11) over (1.4.9) ...
Setting up libapt-pkg5.0:armhf (1.4.11) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../libapt-inst2.0_1.4.11_armhf.deb ...
Unpacking libapt-inst2.0:armhf (1.4.11) over (1.4.9) ...
Preparing to unpack .../archives/apt_1.4.11_armhf.deb ...
Unpacking apt (1.4.11) over (1.4.9) ...
Setting up apt (1.4.11) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../0-apt-utils_1.4.11_armhf.deb ...
Unpacking apt-utils (1.4.11) over (1.4.9) ...
Preparing to unpack .../1-dbus_1.10.32-0+deb9u1_armhf.deb ...
Unpacking dbus (1.10.32-0+deb9u1) over (1.10.26-0+deb9u1) ...
Preparing to unpack .../2-libdbus-1-3_1.10.32-0+deb9u1_armhf.deb ...
Unpacking libdbus-1-3:armhf (1.10.32-0+deb9u1) over (1.10.26-0+deb9u1) ...
Preparing to unpack .../3-libexpat1_2.2.0-2+deb9u3_armhf.deb ...
Unpacking libexpat1:armhf (2.2.0-2+deb9u3) over (2.2.0-2+deb9u1) ...
Preparing to unpack .../4-systemd-sysv_232-25+deb9u12_armhf.deb ...
Unpacking systemd-sysv (232-25+deb9u12) over (232-25+deb9u9) ...
Preparing to unpack .../5-libpam-systemd_232-25+deb9u12_armhf.deb ...
Unpacking libpam-systemd:armhf (232-25+deb9u12) over (232-25+deb9u9) ...
Preparing to unpack .../6-libsystemd0_232-25+deb9u12_armhf.deb ...
Unpacking libsystemd0:armhf (232-25+deb9u12) over (232-25+deb9u9) ...
Setting up libsystemd0:armhf (232-25+deb9u12) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../systemd_232-25+deb9u12_armhf.deb ...
Unpacking systemd (232-25+deb9u12) over (232-25+deb9u9) ...
Preparing to unpack .../udev_232-25+deb9u12_armhf.deb ...
Unpacking udev (232-25+deb9u12) over (232-25+deb9u9) ...
Preparing to unpack .../libudev1_232-25+deb9u12_armhf.deb ...
Unpacking libudev1:armhf (232-25+deb9u12) over (232-25+deb9u9) ...
Setting up libudev1:armhf (232-25+deb9u12) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../0-libidn11_1.33-1+deb9u1_armhf.deb ...
Unpacking libidn11:armhf (1.33-1+deb9u1) over (1.33-1) ...
Preparing to unpack .../1-libbsd0_0.8.3-1+deb9u1_armhf.deb ...
Unpacking libbsd0:armhf (0.8.3-1+deb9u1) over (0.8.3-1) ...
Preparing to unpack .../2-libwbclient0_2%3a4.5.16+dfsg-1+deb9u3_armhf.deb ...
Unpacking libwbclient0:armhf (2:4.5.16+dfsg-1+deb9u3) over (2:4.5.16+dfsg-1) ...
Preparing to unpack .../3-python2.7_2.7.13-2+deb9u4_armhf.deb ...
Unpacking python2.7 (2.7.13-2+deb9u4) over (2.7.13-2+deb9u3) ...
Preparing to unpack .../4-libpython2.7-stdlib_2.7.13-2+deb9u4_armhf.deb ...
Unpacking libpython2.7-stdlib:armhf (2.7.13-2+deb9u4) over (2.7.13-2+deb9u3) ...
Preparing to unpack .../5-python2.7-minimal_2.7.13-2+deb9u4_armhf.deb ...
Unpacking python2.7-minimal (2.7.13-2+deb9u4) over (2.7.13-2+deb9u3) ...
Preparing to unpack .../6-libpython2.7-minimal_2.7.13-2+deb9u4_armhf.deb ...
Unpacking libpython2.7-minimal:armhf (2.7.13-2+deb9u4) over (2.7.13-2+deb9u3) ...
Preparing to unpack .../7-libsqlite3-0_3.16.2-5+deb9u3_armhf.deb ...
Unpacking libsqlite3-0:armhf (3.16.2-5+deb9u3) over (3.16.2-5+deb9u1) ...
Setting up libsqlite3-0:armhf (3.16.2-5+deb9u3) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../0-libssl1.1_1.1.0l-1~deb9u3_armhf.deb ...
Unpacking libssl1.1:armhf (1.1.0l-1~deb9u3) over (1.1.0j-1~deb9u1) ...
Preparing to unpack .../1-libpython3.5_3.5.3-1+deb9u3_armhf.deb ...
Unpacking libpython3.5:armhf (3.5.3-1+deb9u3) over (3.5.3-1+deb9u1) ...
Preparing to unpack .../2-python3.5_3.5.3-1+deb9u3_armhf.deb ...
Unpacking python3.5 (3.5.3-1+deb9u3) over (3.5.3-1+deb9u1) ...
Preparing to unpack .../3-libpython3.5-stdlib_3.5.3-1+deb9u3_armhf.deb ...
Unpacking libpython3.5-stdlib:armhf (3.5.3-1+deb9u3) over (3.5.3-1+deb9u1) ...
Preparing to unpack .../4-python3.5-minimal_3.5.3-1+deb9u3_armhf.deb ...
Unpacking python3.5-minimal (3.5.3-1+deb9u3) over (3.5.3-1+deb9u1) ...
Preparing to unpack .../5-libpython3.5-minimal_3.5.3-1+deb9u3_armhf.deb ...
Unpacking libpython3.5-minimal:armhf (3.5.3-1+deb9u3) over (3.5.3-1+deb9u1) ...
Preparing to unpack .../6-samba-common_2%3a4.5.16+dfsg-1+deb9u3_all.deb ...
Unpacking samba-common (2:4.5.16+dfsg-1+deb9u3) over (2:4.5.16+dfsg-1) ...
Preparing to unpack .../7-openssh-sftp-server_1%3a7.4p1-10+deb9u7_armhf.deb ...
Unpacking openssh-sftp-server (1:7.4p1-10+deb9u7) over (1:7.4p1-10+deb9u6) ...
Preparing to unpack .../8-libcomerr2_1.43.4-2+deb9u2_armhf.deb ...
Unpacking libcomerr2:armhf (1.43.4-2+deb9u2) over (1.43.4-2) ...
Setting up libcomerr2:armhf (1.43.4-2+deb9u2) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../0-libgssapi-krb5-2_1.15-1+deb9u2_armhf.deb ...
Unpacking libgssapi-krb5-2:armhf (1.15-1+deb9u2) over (1.15-1+deb9u1) ...
Preparing to unpack .../1-libkrb5-3_1.15-1+deb9u2_armhf.deb ...
Unpacking libkrb5-3:armhf (1.15-1+deb9u2) over (1.15-1+deb9u1) ...
Preparing to unpack .../2-libkrb5support0_1.15-1+deb9u2_armhf.deb ...
Unpacking libkrb5support0:armhf (1.15-1+deb9u2) over (1.15-1+deb9u1) ...
Preparing to unpack .../3-libk5crypto3_1.15-1+deb9u2_armhf.deb ...
Unpacking libk5crypto3:armhf (1.15-1+deb9u2) over (1.15-1+deb9u1) ...
Preparing to unpack .../4-libssl1.0.2_1.0.2u-1~deb9u4_armhf.deb ...
Unpacking libssl1.0.2:armhf (1.0.2u-1~deb9u4) over (1.0.2r-1~deb9u1) ...
Preparing to unpack .../5-openssh-server_1%3a7.4p1-10+deb9u7_armhf.deb ...
Unpacking openssh-server (1:7.4p1-10+deb9u7) over (1:7.4p1-10+deb9u6) ...
Preparing to unpack .../6-openssh-client_1%3a7.4p1-10+deb9u7_armhf.deb ...
Unpacking openssh-client (1:7.4p1-10+deb9u7) over (1:7.4p1-10+deb9u6) ...
Preparing to unpack .../7-ssh_1%3a7.4p1-10+deb9u7_all.deb ...
Unpacking ssh (1:7.4p1-10+deb9u7) over (1:7.4p1-10+deb9u6) ...
Preparing to unpack .../8-libss2_1.43.4-2+deb9u2_armhf.deb ...
Unpacking libss2:armhf (1.43.4-2+deb9u2) over (1.43.4-2) ...
Setting up libss2:armhf (1.43.4-2+deb9u2) ...
(Reading database ... 34734 files and directories currently installed.)
Preparing to unpack .../00-tzdata_2021a-0+deb9u1_all.deb ...
Unpacking tzdata (2021a-0+deb9u1) over (2019a-0+deb9u1) ...
Preparing to unpack .../01-vim-tiny_2%3a8.0.0197-4+deb9u3_armhf.deb ...
Unpacking vim-tiny (2:8.0.0197-4+deb9u3) over (2:8.0.0197-4+deb9u1) ...
Preparing to unpack .../02-xxd_2%3a8.0.0197-4+deb9u3_armhf.deb ...
Unpacking xxd (2:8.0.0197-4+deb9u3) over (2:8.0.0197-4+deb9u1) ...
Preparing to unpack .../03-vim-common_2%3a8.0.0197-4+deb9u3_all.deb ...
Unpacking vim-common (2:8.0.0197-4+deb9u3) over (2:8.0.0197-4+deb9u1) ...
Preparing to unpack .../04-libicu57_57.1-6+deb9u4_armhf.deb ...
Unpacking libicu57:armhf (57.1-6+deb9u4) over (57.1-6+deb9u2) ...
Preparing to unpack .../05-libxml2_2.9.4+dfsg1-2.2+deb9u3_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-2.2+deb9u3) over (2.9.4+dfsg1-2.2+deb9u2) ...
Preparing to unpack .../06-bind9-host_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking bind9-host (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../07-libisc160_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libisc160:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../08-libdns162_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libdns162:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../09-libisccc140_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libisccc140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../10-libisccfg140_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libisccfg140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../11-libbind9-140_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libbind9-140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../12-liblwres141_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking liblwres141:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../13-file_1%3a5.30-1+deb9u3_armhf.deb ...
Unpacking file (1:5.30-1+deb9u3) over (1:5.30-1+deb9u2) ...
Preparing to unpack .../14-libmagic1_1%3a5.30-1+deb9u3_armhf.deb ...
Unpacking libmagic1:armhf (1:5.30-1+deb9u3) over (1:5.30-1+deb9u2) ...
Preparing to unpack .../15-libmagic-mgc_1%3a5.30-1+deb9u3_armhf.deb ...
Unpacking libmagic-mgc (1:5.30-1+deb9u3) over (1:5.30-1+deb9u2) ...
Preparing to unpack .../16-gettext-base_0.19.8.1-2+deb9u1_armhf.deb ...
Unpacking gettext-base (0.19.8.1-2+deb9u1) over (0.19.8.1-2) ...
Preparing to unpack .../17-libp11-kit0_0.23.3-2+deb9u1_armhf.deb ...
Unpacking libp11-kit0:armhf (0.23.3-2+deb9u1) over (0.23.3-2) ...
Preparing to unpack .../18-libgnutls30_3.5.8-5+deb9u5_armhf.deb ...
Unpacking libgnutls30:armhf (3.5.8-5+deb9u5) over (3.5.8-5+deb9u4) ...
Preparing to unpack .../19-libsasl2-modules-db_2.1.27~101-g0780600+dfsg-3+deb9u1_armhf.deb ...
Unpacking libsasl2-modules-db:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) over (2.1.27~101-g0780600+dfsg-3) ...
Preparing to unpack .../20-libsasl2-2_2.1.27~101-g0780600+dfsg-3+deb9u1_armhf.deb ...
Unpacking libsasl2-2:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) over (2.1.27~101-g0780600+dfsg-3) ...
Preparing to unpack .../21-libldap-common_2.4.44+dfsg-5+deb9u8_all.deb ...
Unpacking libldap-common (2.4.44+dfsg-5+deb9u8) over (2.4.44+dfsg-5+deb9u1) ...
Preparing to unpack .../22-libldap-2.4-2_2.4.44+dfsg-5+deb9u8_armhf.deb ...
Unpacking libldap-2.4-2:armhf (2.4.44+dfsg-5+deb9u8) over (2.4.44+dfsg-5+deb9u1) ...
Preparing to unpack .../23-nfs-common_1%3a1.3.4-2.1+deb9u1_armhf.deb ...
Unpacking nfs-common (1:1.3.4-2.1+deb9u1) over (1:1.3.4-2.1) ...
Preparing to unpack .../24-patch_2.7.5-1+deb9u2_armhf.deb ...
Unpacking patch (2.7.5-1+deb9u2) over (2.7.5-1+deb9u1) ...
Preparing to unpack .../25-libnghttp2-14_1.18.1-1+deb9u1_armhf.deb ...
Unpacking libnghttp2-14:armhf (1.18.1-1+deb9u1) over (1.18.1-1) ...
Preparing to unpack .../26-libssh2-1_1.7.0-1+deb9u1_armhf.deb ...
Unpacking libssh2-1:armhf (1.7.0-1+deb9u1) over (1.7.0-1) ...
Preparing to unpack .../27-libcurl3-gnutls_7.52.1-5+deb9u13_armhf.deb ...
Unpacking libcurl3-gnutls:armhf (7.52.1-5+deb9u13) over (7.52.1-5+deb9u9) ...
Preparing to unpack .../28-apt-transport-https_1.4.11_armhf.deb ...
Unpacking apt-transport-https (1.4.11) over (1.4.9) ...
Preparing to unpack .../29-openssl_1.1.0l-1~deb9u3_armhf.deb ...
Unpacking openssl (1.1.0l-1~deb9u3) over (1.1.0j-1~deb9u1) ...
Preparing to unpack .../30-ca-certificates_20200601~deb9u1_all.deb ...
Unpacking ca-certificates (20200601~deb9u1) over (20161130+nmu1+deb9u1) ...
Preparing to unpack .../31-curl_7.52.1-5+deb9u13_armhf.deb ...
Unpacking curl (7.52.1-5+deb9u13) over (7.52.1-5+deb9u9) ...
Preparing to unpack .../32-libcurl3_7.52.1-5+deb9u13_armhf.deb ...
Unpacking libcurl3:armhf (7.52.1-5+deb9u13) over (7.52.1-5+deb9u9) ...
Preparing to unpack .../33-libisc-export160_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libisc-export160 (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../34-libdns-export162_1%3a9.10.3.dfsg.P4-12.3+deb9u8_armhf.deb ...
Unpacking libdns-export162 (1:9.10.3.dfsg.P4-12.3+deb9u8) over (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Preparing to unpack .../35-libpng-tools_1.6.28-1+deb9u1_armhf.deb ...
Unpacking libpng-tools (1.6.28-1+deb9u1) over (1.6.28-1) ...
Preparing to unpack .../36-libpng-dev_1.6.28-1+deb9u1_armhf.deb ...
Unpacking libpng-dev:armhf (1.6.28-1+deb9u1) over (1.6.28-1) ...
Preparing to unpack .../37-libpng16-16_1.6.28-1+deb9u1_armhf.deb ...
Unpacking libpng16-16:armhf (1.6.28-1+deb9u1) over (1.6.28-1) ...
Preparing to unpack .../38-libfreetype6-dev_2.6.3-3.2+deb9u2_armhf.deb ...
Unpacking libfreetype6-dev (2.6.3-3.2+deb9u2) over (2.6.3-3.2) ...
Preparing to unpack .../39-libfreetype6_2.6.3-3.2+deb9u2_armhf.deb ...
Unpacking libfreetype6:armhf (2.6.3-3.2+deb9u2) over (2.6.3-3.2) ...
Preparing to unpack .../40-libglib2.0-0_2.50.3-2+deb9u2_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.50.3-2+deb9u2) over (2.50.3-2) ...
Preparing to unpack .../41-libglib2.0-data_2.50.3-2+deb9u2_all.deb ...
Unpacking libglib2.0-data (2.50.3-2+deb9u2) over (2.50.3-2) ...
Preparing to unpack .../42-libjpeg62-turbo_1%3a1.5.1-2+deb9u1_armhf.deb ...
Unpacking libjpeg62-turbo:armhf (1:1.5.1-2+deb9u1) over (1:1.5.1-2) ...
Preparing to unpack .../43-luajit_2.0.4+dfsg-1+deb9u1_armhf.deb ...
Unpacking luajit (2.0.4+dfsg-1+deb9u1) over (2.0.4+dfsg-1) ...
Preparing to unpack .../44-libluajit-5.1-common_2.0.4+dfsg-1+deb9u1_all.deb ...
Unpacking libluajit-5.1-common (2.0.4+dfsg-1+deb9u1) over (2.0.4+dfsg-1) ...
Preparing to unpack .../45-libraspberrypi-doc_1.20190819~stretch-1_armhf.deb ...
Unpacking libraspberrypi-doc (1.20190819~stretch-1) over (1.20190401-1) ...
Preparing to unpack .../46-libraspberrypi-dev_1.20190819~stretch-1_armhf.deb ...
Unpacking libraspberrypi-dev (1.20190819~stretch-1) over (1.20190401-1) ...
Preparing to unpack .../47-raspberrypi-kernel_1.20190819~stretch-1_armhf.deb ...
Adding 'diversion of /boot/bcm2708-rpi-b-plus.dtb to /usr/share/rpikernelhack/bcm2708-rpi-b-plus.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2708-rpi-b.dtb to /usr/share/rpikernelhack/bcm2708-rpi-b.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2708-rpi-cm.dtb to /usr/share/rpikernelhack/bcm2708-rpi-cm.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2708-rpi-zero-w.dtb to /usr/share/rpikernelhack/bcm2708-rpi-zero-w.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2708-rpi-zero.dtb to /usr/share/rpikernelhack/bcm2708-rpi-zero.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2709-rpi-2-b.dtb to /usr/share/rpikernelhack/bcm2709-rpi-2-b.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2710-rpi-3-b-plus.dtb to /usr/share/rpikernelhack/bcm2710-rpi-3-b-plus.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2710-rpi-3-b.dtb to /usr/share/rpikernelhack/bcm2710-rpi-3-b.dtb by rpikernelhack'
Adding 'diversion of /boot/bcm2710-rpi-cm3.dtb to /usr/share/rpikernelhack/bcm2710-rpi-cm3.dtb by rpikernelhack'
Adding 'diversion of /boot/kernel.img to /usr/share/rpikernelhack/kernel.img by rpikernelhack'
Adding 'diversion of /boot/kernel7.img to /usr/share/rpikernelhack/kernel7.img by rpikernelhack'
Adding 'diversion of /boot/COPYING.linux to /usr/share/rpikernelhack/COPYING.linux by rpikernelhack'
Adding 'diversion of /boot/overlays/README to /usr/share/rpikernelhack/overlays/README by rpikernelhack'
Adding 'diversion of /boot/overlays/act-led.dtbo to /usr/share/rpikernelhack/overlays/act-led.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/adau1977-adc.dtbo to /usr/share/rpikernelhack/overlays/adau1977-adc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/adau7002-simple.dtbo to /usr/share/rpikernelhack/overlays/adau7002-simple.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ads1015.dtbo to /usr/share/rpikernelhack/overlays/ads1015.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ads1115.dtbo to /usr/share/rpikernelhack/overlays/ads1115.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ads7846.dtbo to /usr/share/rpikernelhack/overlays/ads7846.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/adv7282m.dtbo to /usr/share/rpikernelhack/overlays/adv7282m.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/adv728x-m.dtbo to /usr/share/rpikernelhack/overlays/adv728x-m.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/akkordion-iqdacplus.dtbo to /usr/share/rpikernelhack/overlays/akkordion-iqdacplus.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/allo-boss-dac-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-boss-dac-pcm512x-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/allo-digione.dtbo to /usr/share/rpikernelhack/overlays/allo-digione.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/allo-katana-dac-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-katana-dac-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/allo-piano-dac-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-piano-dac-pcm512x-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/allo-piano-dac-plus-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-piano-dac-plus-pcm512x-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/applepi-dac.dtbo to /usr/share/rpikernelhack/overlays/applepi-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/at86rf233.dtbo to /usr/share/rpikernelhack/overlays/at86rf233.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/audioinjector-addons.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-addons.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/audioinjector-ultra.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-ultra.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/audioinjector-wm8731-audio.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-wm8731-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/audiosense-pi.dtbo to /usr/share/rpikernelhack/overlays/audiosense-pi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/audremap.dtbo to /usr/share/rpikernelhack/overlays/audremap.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/balena-fin.dtbo to /usr/share/rpikernelhack/overlays/balena-fin.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/bmp085_i2c-sensor.dtbo to /usr/share/rpikernelhack/overlays/bmp085_i2c-sensor.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dht11.dtbo to /usr/share/rpikernelhack/overlays/dht11.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dionaudio-loco-v2.dtbo to /usr/share/rpikernelhack/overlays/dionaudio-loco-v2.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dionaudio-loco.dtbo to /usr/share/rpikernelhack/overlays/dionaudio-loco.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/disable-bt.dtbo to /usr/share/rpikernelhack/overlays/disable-bt.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/disable-wifi.dtbo to /usr/share/rpikernelhack/overlays/disable-wifi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dpi18.dtbo to /usr/share/rpikernelhack/overlays/dpi18.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dpi24.dtbo to /usr/share/rpikernelhack/overlays/dpi24.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/draws.dtbo to /usr/share/rpikernelhack/overlays/draws.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dwc-otg.dtbo to /usr/share/rpikernelhack/overlays/dwc-otg.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/dwc2.dtbo to /usr/share/rpikernelhack/overlays/dwc2.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/enc28j60-spi2.dtbo to /usr/share/rpikernelhack/overlays/enc28j60-spi2.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/enc28j60.dtbo to /usr/share/rpikernelhack/overlays/enc28j60.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/exc3000.dtbo to /usr/share/rpikernelhack/overlays/exc3000.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/fe-pi-audio.dtbo to /usr/share/rpikernelhack/overlays/fe-pi-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/goodix.dtbo to /usr/share/rpikernelhack/overlays/goodix.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/googlevoicehat-soundcard.dtbo to /usr/share/rpikernelhack/overlays/googlevoicehat-soundcard.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-fan.dtbo to /usr/share/rpikernelhack/overlays/gpio-fan.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-ir-tx.dtbo to /usr/share/rpikernelhack/overlays/gpio-ir-tx.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-ir.dtbo to /usr/share/rpikernelhack/overlays/gpio-ir.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-key.dtbo to /usr/share/rpikernelhack/overlays/gpio-key.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-no-bank0-irq.dtbo to /usr/share/rpikernelhack/overlays/gpio-no-bank0-irq.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-no-irq.dtbo to /usr/share/rpikernelhack/overlays/gpio-no-irq.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-poweroff.dtbo to /usr/share/rpikernelhack/overlays/gpio-poweroff.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/gpio-shutdown.dtbo to /usr/share/rpikernelhack/overlays/gpio-shutdown.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hd44780-lcd.dtbo to /usr/share/rpikernelhack/overlays/hd44780-lcd.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-amp.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-amp.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-dac.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-dacplus.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplus.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-dacplusadc.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplusadc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-dacplusadcpro.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplusadcpro.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-digi-pro.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-digi-pro.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hifiberry-digi.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-digi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hy28a.dtbo to /usr/share/rpikernelhack/overlays/hy28a.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hy28b-2017.dtbo to /usr/share/rpikernelhack/overlays/hy28b-2017.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/hy28b.dtbo to /usr/share/rpikernelhack/overlays/hy28b.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i-sabre-q2m.dtbo to /usr/share/rpikernelhack/overlays/i-sabre-q2m.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c-bcm2708.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-gpio.dtbo to /usr/share/rpikernelhack/overlays/i2c-gpio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-mux.dtbo to /usr/share/rpikernelhack/overlays/i2c-mux.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-pwm-pca9685a.dtbo to /usr/share/rpikernelhack/overlays/i2c-pwm-pca9685a.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-rtc-gpio.dtbo to /usr/share/rpikernelhack/overlays/i2c-rtc-gpio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-rtc.dtbo to /usr/share/rpikernelhack/overlays/i2c-rtc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c-sensor.dtbo to /usr/share/rpikernelhack/overlays/i2c-sensor.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c0-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c0-bcm2708.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c0.dtbo to /usr/share/rpikernelhack/overlays/i2c0.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c1-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c1-bcm2708.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c1.dtbo to /usr/share/rpikernelhack/overlays/i2c1.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c3.dtbo to /usr/share/rpikernelhack/overlays/i2c3.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c4.dtbo to /usr/share/rpikernelhack/overlays/i2c4.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c5.dtbo to /usr/share/rpikernelhack/overlays/i2c5.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2c6.dtbo to /usr/share/rpikernelhack/overlays/i2c6.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/i2s-gpio28-31.dtbo to /usr/share/rpikernelhack/overlays/i2s-gpio28-31.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ilitek251x.dtbo to /usr/share/rpikernelhack/overlays/ilitek251x.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/iqaudio-codec.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-codec.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/iqaudio-dac.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/iqaudio-dacplus.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-dacplus.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/iqaudio-digi-wm8804-audio.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-digi-wm8804-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/jedec-spi-nor.dtbo to /usr/share/rpikernelhack/overlays/jedec-spi-nor.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/justboom-dac.dtbo to /usr/share/rpikernelhack/overlays/justboom-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/justboom-digi.dtbo to /usr/share/rpikernelhack/overlays/justboom-digi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ltc294x.dtbo to /usr/share/rpikernelhack/overlays/ltc294x.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/max98357a.dtbo to /usr/share/rpikernelhack/overlays/max98357a.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mbed-dac.dtbo to /usr/share/rpikernelhack/overlays/mbed-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp23017.dtbo to /usr/share/rpikernelhack/overlays/mcp23017.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp23s17.dtbo to /usr/share/rpikernelhack/overlays/mcp23s17.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp2515-can0.dtbo to /usr/share/rpikernelhack/overlays/mcp2515-can0.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp2515-can1.dtbo to /usr/share/rpikernelhack/overlays/mcp2515-can1.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp3008.dtbo to /usr/share/rpikernelhack/overlays/mcp3008.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp3202.dtbo to /usr/share/rpikernelhack/overlays/mcp3202.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mcp342x.dtbo to /usr/share/rpikernelhack/overlays/mcp342x.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/media-center.dtbo to /usr/share/rpikernelhack/overlays/media-center.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/midi-uart0.dtbo to /usr/share/rpikernelhack/overlays/midi-uart0.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/midi-uart1.dtbo to /usr/share/rpikernelhack/overlays/midi-uart1.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/miniuart-bt.dtbo to /usr/share/rpikernelhack/overlays/miniuart-bt.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mmc.dtbo to /usr/share/rpikernelhack/overlays/mmc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mpu6050.dtbo to /usr/share/rpikernelhack/overlays/mpu6050.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/mz61581.dtbo to /usr/share/rpikernelhack/overlays/mz61581.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ov5647.dtbo to /usr/share/rpikernelhack/overlays/ov5647.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/papirus.dtbo to /usr/share/rpikernelhack/overlays/papirus.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pi3-act-led.dtbo to /usr/share/rpikernelhack/overlays/pi3-act-led.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pi3-disable-bt.dtbo to /usr/share/rpikernelhack/overlays/pi3-disable-bt.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pi3-disable-wifi.dtbo to /usr/share/rpikernelhack/overlays/pi3-disable-wifi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pi3-miniuart-bt.dtbo to /usr/share/rpikernelhack/overlays/pi3-miniuart-bt.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pibell.dtbo to /usr/share/rpikernelhack/overlays/pibell.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/piglow.dtbo to /usr/share/rpikernelhack/overlays/piglow.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/piscreen.dtbo to /usr/share/rpikernelhack/overlays/piscreen.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/piscreen2r.dtbo to /usr/share/rpikernelhack/overlays/piscreen2r.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pisound.dtbo to /usr/share/rpikernelhack/overlays/pisound.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pitft22.dtbo to /usr/share/rpikernelhack/overlays/pitft22.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pitft28-capacitive.dtbo to /usr/share/rpikernelhack/overlays/pitft28-capacitive.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pitft28-resistive.dtbo to /usr/share/rpikernelhack/overlays/pitft28-resistive.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pitft35-resistive.dtbo to /usr/share/rpikernelhack/overlays/pitft35-resistive.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pps-gpio.dtbo to /usr/share/rpikernelhack/overlays/pps-gpio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pwm-2chan.dtbo to /usr/share/rpikernelhack/overlays/pwm-2chan.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pwm-ir-tx.dtbo to /usr/share/rpikernelhack/overlays/pwm-ir-tx.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/pwm.dtbo to /usr/share/rpikernelhack/overlays/pwm.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/qca7000.dtbo to /usr/share/rpikernelhack/overlays/qca7000.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rotary-encoder.dtbo to /usr/share/rpikernelhack/overlays/rotary-encoder.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-backlight.dtbo to /usr/share/rpikernelhack/overlays/rpi-backlight.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-cirrus-wm5102.dtbo to /usr/share/rpikernelhack/overlays/rpi-cirrus-wm5102.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-dac.dtbo to /usr/share/rpikernelhack/overlays/rpi-dac.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-display.dtbo to /usr/share/rpikernelhack/overlays/rpi-display.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-ft5406.dtbo to /usr/share/rpikernelhack/overlays/rpi-ft5406.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-poe.dtbo to /usr/share/rpikernelhack/overlays/rpi-poe.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-proto.dtbo to /usr/share/rpikernelhack/overlays/rpi-proto.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-sense.dtbo to /usr/share/rpikernelhack/overlays/rpi-sense.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rpi-tv.dtbo to /usr/share/rpikernelhack/overlays/rpi-tv.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/rra-digidac1-wm8741-audio.dtbo to /usr/share/rpikernelhack/overlays/rra-digidac1-wm8741-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sc16is750-i2c.dtbo to /usr/share/rpikernelhack/overlays/sc16is750-i2c.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sc16is752-i2c.dtbo to /usr/share/rpikernelhack/overlays/sc16is752-i2c.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sc16is752-spi1.dtbo to /usr/share/rpikernelhack/overlays/sc16is752-spi1.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sdhost.dtbo to /usr/share/rpikernelhack/overlays/sdhost.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sdio.dtbo to /usr/share/rpikernelhack/overlays/sdio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sdtweak.dtbo to /usr/share/rpikernelhack/overlays/sdtweak.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/smi-dev.dtbo to /usr/share/rpikernelhack/overlays/smi-dev.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/smi-nand.dtbo to /usr/share/rpikernelhack/overlays/smi-nand.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/smi.dtbo to /usr/share/rpikernelhack/overlays/smi.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi-gpio35-39.dtbo to /usr/share/rpikernelhack/overlays/spi-gpio35-39.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi-gpio40-45.dtbo to /usr/share/rpikernelhack/overlays/spi-gpio40-45.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi-rtc.dtbo to /usr/share/rpikernelhack/overlays/spi-rtc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi0-cs.dtbo to /usr/share/rpikernelhack/overlays/spi0-cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi0-hw-cs.dtbo to /usr/share/rpikernelhack/overlays/spi0-hw-cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi1-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi1-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi1-3cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-3cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi2-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi2-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi2-3cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-3cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi3-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi3-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi3-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi3-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi4-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi4-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi4-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi4-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi5-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi5-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi5-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi5-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi6-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi6-1cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/spi6-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi6-2cs.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/ssd1306.dtbo to /usr/share/rpikernelhack/overlays/ssd1306.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/superaudioboard.dtbo to /usr/share/rpikernelhack/overlays/superaudioboard.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/sx150x.dtbo to /usr/share/rpikernelhack/overlays/sx150x.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/tc358743-audio.dtbo to /usr/share/rpikernelhack/overlays/tc358743-audio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/tc358743.dtbo to /usr/share/rpikernelhack/overlays/tc358743.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/tinylcd35.dtbo to /usr/share/rpikernelhack/overlays/tinylcd35.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/tpm-slb9670.dtbo to /usr/share/rpikernelhack/overlays/tpm-slb9670.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart0.dtbo to /usr/share/rpikernelhack/overlays/uart0.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart1.dtbo to /usr/share/rpikernelhack/overlays/uart1.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart2.dtbo to /usr/share/rpikernelhack/overlays/uart2.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart3.dtbo to /usr/share/rpikernelhack/overlays/uart3.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart4.dtbo to /usr/share/rpikernelhack/overlays/uart4.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/uart5.dtbo to /usr/share/rpikernelhack/overlays/uart5.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/udrc.dtbo to /usr/share/rpikernelhack/overlays/udrc.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/upstream.dtbo to /usr/share/rpikernelhack/overlays/upstream.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/vc4-fkms-v3d.dtbo to /usr/share/rpikernelhack/overlays/vc4-fkms-v3d.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/vc4-kms-kippah-7inch.dtbo to /usr/share/rpikernelhack/overlays/vc4-kms-kippah-7inch.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/vc4-kms-v3d.dtbo to /usr/share/rpikernelhack/overlays/vc4-kms-v3d.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/vga666.dtbo to /usr/share/rpikernelhack/overlays/vga666.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/w1-gpio-pullup.dtbo to /usr/share/rpikernelhack/overlays/w1-gpio-pullup.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/w1-gpio.dtbo to /usr/share/rpikernelhack/overlays/w1-gpio.dtbo by rpikernelhack'
Adding 'diversion of /boot/overlays/wittypi.dtbo to /usr/share/rpikernelhack/overlays/wittypi.dtbo by rpikernelhack'
Unpacking raspberrypi-kernel (1.20190819~stretch-1) over (1.20190401-1) ...
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.14.98+ /boot/kernel.img
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.14.98-v7+ /boot/kernel7.img
Preparing to unpack .../48-libraspberrypi-bin_1.20190819~stretch-1_armhf.deb ...
Unpacking libraspberrypi-bin (1.20190819~stretch-1) over (1.20190401-1) ...
Preparing to unpack .../49-libraspberrypi0_1.20190819~stretch-1_armhf.deb ...
Unpacking libraspberrypi0 (1.20190819~stretch-1) over (1.20190401-1) ...
Preparing to unpack .../50-raspberrypi-bootloader_1.20190819~stretch-1_armhf.deb ...
Adding 'diversion of /boot/start.elf to /usr/share/rpikernelhack/start.elf by rpikernelhack'
Adding 'diversion of /boot/start_cd.elf to /usr/share/rpikernelhack/start_cd.elf by rpikernelhack'
Adding 'diversion of /boot/start_db.elf to /usr/share/rpikernelhack/start_db.elf by rpikernelhack'
Adding 'diversion of /boot/start_x.elf to /usr/share/rpikernelhack/start_x.elf by rpikernelhack'
Adding 'diversion of /boot/fixup.dat to /usr/share/rpikernelhack/fixup.dat by rpikernelhack'
Adding 'diversion of /boot/fixup_cd.dat to /usr/share/rpikernelhack/fixup_cd.dat by rpikernelhack'
Adding 'diversion of /boot/fixup_db.dat to /usr/share/rpikernelhack/fixup_db.dat by rpikernelhack'
Adding 'diversion of /boot/fixup_x.dat to /usr/share/rpikernelhack/fixup_x.dat by rpikernelhack'
Adding 'diversion of /boot/bootcode.bin to /usr/share/rpikernelhack/bootcode.bin by rpikernelhack'
Adding 'diversion of /boot/LICENCE.broadcom to /usr/share/rpikernelhack/LICENCE.broadcom by rpikernelhack'
Unpacking raspberrypi-bootloader (1.20190819~stretch-1) over (1.20190401-1) ...
Preparing to unpack .../51-libsasl2-modules_2.1.27~101-g0780600+dfsg-3+deb9u1_armhf.deb ...
Unpacking libsasl2-modules:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) over (2.1.27~101-g0780600+dfsg-3) ...
Preparing to unpack .../52-libx11-data_2%3a1.6.4-3+deb9u3_all.deb ...
Unpacking libx11-data (2:1.6.4-3+deb9u3) over (2:1.6.4-3+deb9u1) ...
Preparing to unpack .../53-libx11-6_2%3a1.6.4-3+deb9u3_armhf.deb ...
Unpacking libx11-6:armhf (2:1.6.4-3+deb9u3) over (2:1.6.4-3+deb9u1) ...
Preparing to unpack .../54-python-apt-common_1.4.3_all.deb ...
Unpacking python-apt-common (1.4.3) over (1.1.0~beta5) ...
Preparing to unpack .../55-python3-apt_1.4.3_armhf.deb ...
Unpacking python3-apt (1.4.3) over (1.1.0~beta5) ...
Preparing to unpack .../56-rsync_3.1.2-1+deb9u2_armhf.deb ...
Unpacking rsync (3.1.2-1+deb9u2) over (3.1.2-1+deb9u1) ...
Preparing to unpack .../57-sudo_1.8.19p1-2.1+deb9u3_armhf.deb ...
Unpacking sudo (1.8.19p1-2.1+deb9u3) over (1.8.19p1-2.1) ...
Preparing to unpack .../58-unzip_6.0-21+deb9u2_armhf.deb ...
Unpacking unzip (6.0-21+deb9u2) over (6.0-21) ...
Preparing to unpack .../59-usbutils_1%3a007-4+deb9u1_armhf.deb ...
Unpacking usbutils (1:007-4+deb9u1) over (1:007-4) ...
Preparing to unpack .../60-raspi-config_20190423_all.deb ...
Unpacking raspi-config (20190423) over (20190219) ...
Setting up python-apt-common (1.4.3) ...
Setting up perl-modules-5.24 (5.24.1-3+deb9u7) ...
Setting up libapt-inst2.0:armhf (1.4.11) ...
Setting up libperl5.24:armhf (5.24.1-3+deb9u7) ...
Setting up libexpat1:armhf (2.2.0-2+deb9u3) ...
Setting up python3-apt (1.4.3) ...
Setting up libjpeg62-turbo:armhf (1:1.5.1-2+deb9u1) ...
Setting up libisc-export160 (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up libnghttp2-14:armhf (1.18.1-1+deb9u1) ...
Setting up libluajit-5.1-common (2.0.4+dfsg-1+deb9u1) ...
Processing triggers for mime-support (3.60) ...
Setting up xxd (2:8.0.0197-4+deb9u3) ...
Setting up sudo (1.8.19p1-2.1+deb9u3) ...
Setting up libpng16-16:armhf (1.6.28-1+deb9u1) ...
Setting up libldap-common (2.4.44+dfsg-5+deb9u8) ...
Setting up apt-utils (1.4.11) ...
Processing triggers for install-info (6.3.0.dfsg.1-1+b1) ...
Setting up libpng-tools (1.6.28-1+deb9u1) ...
Setting up tzdata (2021a-0+deb9u1) ...

Current default time zone: 'Europe/London'
Local time is now:      Fri Feb 26 05:02:42 GMT 2021.
Universal Time is now:  Fri Feb 26 05:02:42 UTC 2021.
Run 'dpkg-reconfigure tzdata' if you wish to change it.

Setting up libglib2.0-0:armhf (2.50.3-2+deb9u2) ...
No schema files found: doing nothing.
Setting up libsasl2-modules-db:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) ...
Setting up unzip (6.0-21+deb9u2) ...
Setting up raspberrypi-bootloader (1.20190819~stretch-1) ...
Removing 'diversion of /boot/start.elf to /usr/share/rpikernelhack/start.elf by rpikernelhack'
Removing 'diversion of /boot/start_cd.elf to /usr/share/rpikernelhack/start_cd.elf by rpikernelhack'
Removing 'diversion of /boot/start_db.elf to /usr/share/rpikernelhack/start_db.elf by rpikernelhack'
Removing 'diversion of /boot/start_x.elf to /usr/share/rpikernelhack/start_x.elf by rpikernelhack'
Removing 'diversion of /boot/fixup.dat to /usr/share/rpikernelhack/fixup.dat by rpikernelhack'
Removing 'diversion of /boot/fixup_cd.dat to /usr/share/rpikernelhack/fixup_cd.dat by rpikernelhack'
Removing 'diversion of /boot/fixup_db.dat to /usr/share/rpikernelhack/fixup_db.dat by rpikernelhack'
Removing 'diversion of /boot/fixup_x.dat to /usr/share/rpikernelhack/fixup_x.dat by rpikernelhack'
Removing 'diversion of /boot/bootcode.bin to /usr/share/rpikernelhack/bootcode.bin by rpikernelhack'
Removing 'diversion of /boot/LICENCE.broadcom to /usr/share/rpikernelhack/LICENCE.broadcom by rpikernelhack'
Setting up libsasl2-2:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) ...
Setting up samba-common (2:4.5.16+dfsg-1+deb9u3) ...
Setting up gettext-base (0.19.8.1-2+deb9u1) ...
Processing triggers for initramfs-tools (0.130) ...
Setting up usbutils (1:007-4+deb9u1) ...
Setting up libicu57:armhf (57.1-6+deb9u4) ...
Setting up libbsd0:armhf (0.8.3-1+deb9u1) ...
Setting up libkrb5support0:armhf (1.15-1+deb9u2) ...
Setting up libxml2:armhf (2.9.4+dfsg1-2.2+deb9u3) ...
Setting up libfreetype6:armhf (2.6.3-3.2+deb9u2) ...
Setting up libmagic-mgc (1:5.30-1+deb9u3) ...
Setting up libmagic1:armhf (1:5.30-1+deb9u3) ...
Setting up rsync (3.1.2-1+deb9u2) ...
Setting up raspi-config (20190423) ...
Setting up perl (5.24.1-3+deb9u7) ...
Setting up libssl1.0.2:armhf (1.0.2u-1~deb9u4) ...
Setting up libssh2-1:armhf (1.7.0-1+deb9u1) ...
Setting up patch (2.7.5-1+deb9u2) ...
Setting up libglib2.0-data (2.50.3-2+deb9u2) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Setting up udev (232-25+deb9u12) ...
addgroup: The group `input' already exists as a system group. Exiting.
update-initramfs: deferring update (trigger activated)
Setting up luajit (2.0.4+dfsg-1+deb9u1) ...
Setting up libssl1.1:armhf (1.1.0l-1~deb9u3) ...
Setting up raspberrypi-kernel (1.20190819~stretch-1) ...
Removing 'diversion of /boot/bcm2708-rpi-b-plus.dtb to /usr/share/rpikernelhack/bcm2708-rpi-b-plus.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2708-rpi-b.dtb to /usr/share/rpikernelhack/bcm2708-rpi-b.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2708-rpi-cm.dtb to /usr/share/rpikernelhack/bcm2708-rpi-cm.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2708-rpi-zero-w.dtb to /usr/share/rpikernelhack/bcm2708-rpi-zero-w.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2708-rpi-zero.dtb to /usr/share/rpikernelhack/bcm2708-rpi-zero.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2709-rpi-2-b.dtb to /usr/share/rpikernelhack/bcm2709-rpi-2-b.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2710-rpi-3-b-plus.dtb to /usr/share/rpikernelhack/bcm2710-rpi-3-b-plus.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2710-rpi-3-b.dtb to /usr/share/rpikernelhack/bcm2710-rpi-3-b.dtb by rpikernelhack'
Removing 'diversion of /boot/bcm2710-rpi-cm3.dtb to /usr/share/rpikernelhack/bcm2710-rpi-cm3.dtb by rpikernelhack'
Removing 'diversion of /boot/kernel.img to /usr/share/rpikernelhack/kernel.img by rpikernelhack'
Removing 'diversion of /boot/kernel7.img to /usr/share/rpikernelhack/kernel7.img by rpikernelhack'
Removing 'diversion of /boot/COPYING.linux to /usr/share/rpikernelhack/COPYING.linux by rpikernelhack'
Removing 'diversion of /boot/overlays/README to /usr/share/rpikernelhack/overlays/README by rpikernelhack'
Removing 'diversion of /boot/overlays/act-led.dtbo to /usr/share/rpikernelhack/overlays/act-led.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/adau1977-adc.dtbo to /usr/share/rpikernelhack/overlays/adau1977-adc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/adau7002-simple.dtbo to /usr/share/rpikernelhack/overlays/adau7002-simple.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ads1015.dtbo to /usr/share/rpikernelhack/overlays/ads1015.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ads1115.dtbo to /usr/share/rpikernelhack/overlays/ads1115.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ads7846.dtbo to /usr/share/rpikernelhack/overlays/ads7846.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/adv7282m.dtbo to /usr/share/rpikernelhack/overlays/adv7282m.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/adv728x-m.dtbo to /usr/share/rpikernelhack/overlays/adv728x-m.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/akkordion-iqdacplus.dtbo to /usr/share/rpikernelhack/overlays/akkordion-iqdacplus.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/allo-boss-dac-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-boss-dac-pcm512x-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/allo-digione.dtbo to /usr/share/rpikernelhack/overlays/allo-digione.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/allo-katana-dac-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-katana-dac-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/allo-piano-dac-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-piano-dac-pcm512x-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/allo-piano-dac-plus-pcm512x-audio.dtbo to /usr/share/rpikernelhack/overlays/allo-piano-dac-plus-pcm512x-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/applepi-dac.dtbo to /usr/share/rpikernelhack/overlays/applepi-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/at86rf233.dtbo to /usr/share/rpikernelhack/overlays/at86rf233.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/audioinjector-addons.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-addons.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/audioinjector-ultra.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-ultra.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/audioinjector-wm8731-audio.dtbo to /usr/share/rpikernelhack/overlays/audioinjector-wm8731-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/audiosense-pi.dtbo to /usr/share/rpikernelhack/overlays/audiosense-pi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/audremap.dtbo to /usr/share/rpikernelhack/overlays/audremap.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/balena-fin.dtbo to /usr/share/rpikernelhack/overlays/balena-fin.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/bmp085_i2c-sensor.dtbo to /usr/share/rpikernelhack/overlays/bmp085_i2c-sensor.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dht11.dtbo to /usr/share/rpikernelhack/overlays/dht11.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dionaudio-loco-v2.dtbo to /usr/share/rpikernelhack/overlays/dionaudio-loco-v2.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dionaudio-loco.dtbo to /usr/share/rpikernelhack/overlays/dionaudio-loco.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/disable-bt.dtbo to /usr/share/rpikernelhack/overlays/disable-bt.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/disable-wifi.dtbo to /usr/share/rpikernelhack/overlays/disable-wifi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dpi18.dtbo to /usr/share/rpikernelhack/overlays/dpi18.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dpi24.dtbo to /usr/share/rpikernelhack/overlays/dpi24.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/draws.dtbo to /usr/share/rpikernelhack/overlays/draws.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dwc-otg.dtbo to /usr/share/rpikernelhack/overlays/dwc-otg.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/dwc2.dtbo to /usr/share/rpikernelhack/overlays/dwc2.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/enc28j60-spi2.dtbo to /usr/share/rpikernelhack/overlays/enc28j60-spi2.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/enc28j60.dtbo to /usr/share/rpikernelhack/overlays/enc28j60.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/exc3000.dtbo to /usr/share/rpikernelhack/overlays/exc3000.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/fe-pi-audio.dtbo to /usr/share/rpikernelhack/overlays/fe-pi-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/goodix.dtbo to /usr/share/rpikernelhack/overlays/goodix.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/googlevoicehat-soundcard.dtbo to /usr/share/rpikernelhack/overlays/googlevoicehat-soundcard.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-fan.dtbo to /usr/share/rpikernelhack/overlays/gpio-fan.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-ir-tx.dtbo to /usr/share/rpikernelhack/overlays/gpio-ir-tx.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-ir.dtbo to /usr/share/rpikernelhack/overlays/gpio-ir.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-key.dtbo to /usr/share/rpikernelhack/overlays/gpio-key.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-no-bank0-irq.dtbo to /usr/share/rpikernelhack/overlays/gpio-no-bank0-irq.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-no-irq.dtbo to /usr/share/rpikernelhack/overlays/gpio-no-irq.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-poweroff.dtbo to /usr/share/rpikernelhack/overlays/gpio-poweroff.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/gpio-shutdown.dtbo to /usr/share/rpikernelhack/overlays/gpio-shutdown.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hd44780-lcd.dtbo to /usr/share/rpikernelhack/overlays/hd44780-lcd.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-amp.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-amp.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-dac.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-dacplus.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplus.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-dacplusadc.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplusadc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-dacplusadcpro.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplusadcpro.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-digi-pro.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-digi-pro.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hifiberry-digi.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-digi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hy28a.dtbo to /usr/share/rpikernelhack/overlays/hy28a.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hy28b-2017.dtbo to /usr/share/rpikernelhack/overlays/hy28b-2017.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/hy28b.dtbo to /usr/share/rpikernelhack/overlays/hy28b.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i-sabre-q2m.dtbo to /usr/share/rpikernelhack/overlays/i-sabre-q2m.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c-bcm2708.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-gpio.dtbo to /usr/share/rpikernelhack/overlays/i2c-gpio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-mux.dtbo to /usr/share/rpikernelhack/overlays/i2c-mux.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-pwm-pca9685a.dtbo to /usr/share/rpikernelhack/overlays/i2c-pwm-pca9685a.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-rtc-gpio.dtbo to /usr/share/rpikernelhack/overlays/i2c-rtc-gpio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-rtc.dtbo to /usr/share/rpikernelhack/overlays/i2c-rtc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c-sensor.dtbo to /usr/share/rpikernelhack/overlays/i2c-sensor.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c0-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c0-bcm2708.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c0.dtbo to /usr/share/rpikernelhack/overlays/i2c0.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c1-bcm2708.dtbo to /usr/share/rpikernelhack/overlays/i2c1-bcm2708.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c1.dtbo to /usr/share/rpikernelhack/overlays/i2c1.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c3.dtbo to /usr/share/rpikernelhack/overlays/i2c3.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c4.dtbo to /usr/share/rpikernelhack/overlays/i2c4.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c5.dtbo to /usr/share/rpikernelhack/overlays/i2c5.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2c6.dtbo to /usr/share/rpikernelhack/overlays/i2c6.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/i2s-gpio28-31.dtbo to /usr/share/rpikernelhack/overlays/i2s-gpio28-31.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ilitek251x.dtbo to /usr/share/rpikernelhack/overlays/ilitek251x.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/iqaudio-codec.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-codec.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/iqaudio-dac.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/iqaudio-dacplus.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-dacplus.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/iqaudio-digi-wm8804-audio.dtbo to /usr/share/rpikernelhack/overlays/iqaudio-digi-wm8804-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/jedec-spi-nor.dtbo to /usr/share/rpikernelhack/overlays/jedec-spi-nor.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/justboom-dac.dtbo to /usr/share/rpikernelhack/overlays/justboom-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/justboom-digi.dtbo to /usr/share/rpikernelhack/overlays/justboom-digi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ltc294x.dtbo to /usr/share/rpikernelhack/overlays/ltc294x.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/max98357a.dtbo to /usr/share/rpikernelhack/overlays/max98357a.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mbed-dac.dtbo to /usr/share/rpikernelhack/overlays/mbed-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp23017.dtbo to /usr/share/rpikernelhack/overlays/mcp23017.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp23s17.dtbo to /usr/share/rpikernelhack/overlays/mcp23s17.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp2515-can0.dtbo to /usr/share/rpikernelhack/overlays/mcp2515-can0.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp2515-can1.dtbo to /usr/share/rpikernelhack/overlays/mcp2515-can1.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp3008.dtbo to /usr/share/rpikernelhack/overlays/mcp3008.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp3202.dtbo to /usr/share/rpikernelhack/overlays/mcp3202.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mcp342x.dtbo to /usr/share/rpikernelhack/overlays/mcp342x.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/media-center.dtbo to /usr/share/rpikernelhack/overlays/media-center.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/midi-uart0.dtbo to /usr/share/rpikernelhack/overlays/midi-uart0.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/midi-uart1.dtbo to /usr/share/rpikernelhack/overlays/midi-uart1.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/miniuart-bt.dtbo to /usr/share/rpikernelhack/overlays/miniuart-bt.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mmc.dtbo to /usr/share/rpikernelhack/overlays/mmc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mpu6050.dtbo to /usr/share/rpikernelhack/overlays/mpu6050.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/mz61581.dtbo to /usr/share/rpikernelhack/overlays/mz61581.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ov5647.dtbo to /usr/share/rpikernelhack/overlays/ov5647.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/papirus.dtbo to /usr/share/rpikernelhack/overlays/papirus.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pi3-act-led.dtbo to /usr/share/rpikernelhack/overlays/pi3-act-led.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pi3-disable-bt.dtbo to /usr/share/rpikernelhack/overlays/pi3-disable-bt.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pi3-disable-wifi.dtbo to /usr/share/rpikernelhack/overlays/pi3-disable-wifi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pi3-miniuart-bt.dtbo to /usr/share/rpikernelhack/overlays/pi3-miniuart-bt.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pibell.dtbo to /usr/share/rpikernelhack/overlays/pibell.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/piglow.dtbo to /usr/share/rpikernelhack/overlays/piglow.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/piscreen.dtbo to /usr/share/rpikernelhack/overlays/piscreen.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/piscreen2r.dtbo to /usr/share/rpikernelhack/overlays/piscreen2r.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pisound.dtbo to /usr/share/rpikernelhack/overlays/pisound.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pitft22.dtbo to /usr/share/rpikernelhack/overlays/pitft22.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pitft28-capacitive.dtbo to /usr/share/rpikernelhack/overlays/pitft28-capacitive.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pitft28-resistive.dtbo to /usr/share/rpikernelhack/overlays/pitft28-resistive.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pitft35-resistive.dtbo to /usr/share/rpikernelhack/overlays/pitft35-resistive.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pps-gpio.dtbo to /usr/share/rpikernelhack/overlays/pps-gpio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pwm-2chan.dtbo to /usr/share/rpikernelhack/overlays/pwm-2chan.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pwm-ir-tx.dtbo to /usr/share/rpikernelhack/overlays/pwm-ir-tx.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/pwm.dtbo to /usr/share/rpikernelhack/overlays/pwm.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/qca7000.dtbo to /usr/share/rpikernelhack/overlays/qca7000.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rotary-encoder.dtbo to /usr/share/rpikernelhack/overlays/rotary-encoder.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-backlight.dtbo to /usr/share/rpikernelhack/overlays/rpi-backlight.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-cirrus-wm5102.dtbo to /usr/share/rpikernelhack/overlays/rpi-cirrus-wm5102.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-dac.dtbo to /usr/share/rpikernelhack/overlays/rpi-dac.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-display.dtbo to /usr/share/rpikernelhack/overlays/rpi-display.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-ft5406.dtbo to /usr/share/rpikernelhack/overlays/rpi-ft5406.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-poe.dtbo to /usr/share/rpikernelhack/overlays/rpi-poe.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-proto.dtbo to /usr/share/rpikernelhack/overlays/rpi-proto.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-sense.dtbo to /usr/share/rpikernelhack/overlays/rpi-sense.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rpi-tv.dtbo to /usr/share/rpikernelhack/overlays/rpi-tv.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/rra-digidac1-wm8741-audio.dtbo to /usr/share/rpikernelhack/overlays/rra-digidac1-wm8741-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sc16is750-i2c.dtbo to /usr/share/rpikernelhack/overlays/sc16is750-i2c.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sc16is752-i2c.dtbo to /usr/share/rpikernelhack/overlays/sc16is752-i2c.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sc16is752-spi1.dtbo to /usr/share/rpikernelhack/overlays/sc16is752-spi1.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sdhost.dtbo to /usr/share/rpikernelhack/overlays/sdhost.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sdio.dtbo to /usr/share/rpikernelhack/overlays/sdio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sdtweak.dtbo to /usr/share/rpikernelhack/overlays/sdtweak.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/smi-dev.dtbo to /usr/share/rpikernelhack/overlays/smi-dev.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/smi-nand.dtbo to /usr/share/rpikernelhack/overlays/smi-nand.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/smi.dtbo to /usr/share/rpikernelhack/overlays/smi.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi-gpio35-39.dtbo to /usr/share/rpikernelhack/overlays/spi-gpio35-39.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi-gpio40-45.dtbo to /usr/share/rpikernelhack/overlays/spi-gpio40-45.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi-rtc.dtbo to /usr/share/rpikernelhack/overlays/spi-rtc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi0-cs.dtbo to /usr/share/rpikernelhack/overlays/spi0-cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi0-hw-cs.dtbo to /usr/share/rpikernelhack/overlays/spi0-hw-cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi1-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi1-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi1-3cs.dtbo to /usr/share/rpikernelhack/overlays/spi1-3cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi2-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi2-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi2-3cs.dtbo to /usr/share/rpikernelhack/overlays/spi2-3cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi3-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi3-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi3-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi3-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi4-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi4-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi4-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi4-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi5-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi5-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi5-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi5-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi6-1cs.dtbo to /usr/share/rpikernelhack/overlays/spi6-1cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/spi6-2cs.dtbo to /usr/share/rpikernelhack/overlays/spi6-2cs.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/ssd1306.dtbo to /usr/share/rpikernelhack/overlays/ssd1306.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/superaudioboard.dtbo to /usr/share/rpikernelhack/overlays/superaudioboard.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/sx150x.dtbo to /usr/share/rpikernelhack/overlays/sx150x.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/tc358743-audio.dtbo to /usr/share/rpikernelhack/overlays/tc358743-audio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/tc358743.dtbo to /usr/share/rpikernelhack/overlays/tc358743.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/tinylcd35.dtbo to /usr/share/rpikernelhack/overlays/tinylcd35.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/tpm-slb9670.dtbo to /usr/share/rpikernelhack/overlays/tpm-slb9670.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart0.dtbo to /usr/share/rpikernelhack/overlays/uart0.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart1.dtbo to /usr/share/rpikernelhack/overlays/uart1.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart2.dtbo to /usr/share/rpikernelhack/overlays/uart2.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart3.dtbo to /usr/share/rpikernelhack/overlays/uart3.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart4.dtbo to /usr/share/rpikernelhack/overlays/uart4.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/uart5.dtbo to /usr/share/rpikernelhack/overlays/uart5.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/udrc.dtbo to /usr/share/rpikernelhack/overlays/udrc.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/upstream.dtbo to /usr/share/rpikernelhack/overlays/upstream.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/vc4-fkms-v3d.dtbo to /usr/share/rpikernelhack/overlays/vc4-fkms-v3d.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/vc4-kms-kippah-7inch.dtbo to /usr/share/rpikernelhack/overlays/vc4-kms-kippah-7inch.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/vc4-kms-v3d.dtbo to /usr/share/rpikernelhack/overlays/vc4-kms-v3d.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/vga666.dtbo to /usr/share/rpikernelhack/overlays/vga666.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/w1-gpio-pullup.dtbo to /usr/share/rpikernelhack/overlays/w1-gpio-pullup.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/w1-gpio.dtbo to /usr/share/rpikernelhack/overlays/w1-gpio.dtbo by rpikernelhack'
Removing 'diversion of /boot/overlays/wittypi.dtbo to /usr/share/rpikernelhack/overlays/wittypi.dtbo by rpikernelhack'
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.19.66+ /boot/kernel.img
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.19.66+ /boot/kernel.img
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.19.66-v7+ /boot/kernel7.img
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.19.66-v7+ /boot/kernel7.img
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.19.66-v7l+ /boot/kernel7l.img
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.19.66-v7l+ /boot/kernel7l.img
Setting up libp11-kit0:armhf (0.23.3-2+deb9u1) ...
Setting up liblwres141:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up openssl (1.1.0l-1~deb9u3) ...
Setting up vim-common (2:8.0.0197-4+deb9u3) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up libpng-dev:armhf (1.6.28-1+deb9u1) ...
Setting up libsasl2-modules:armhf (2.1.27~101-g0780600+dfsg-3+deb9u1) ...
Setting up libpython2.7-minimal:armhf (2.7.13-2+deb9u4) ...
Setting up ca-certificates (20200601~deb9u1) ...
Updating certificates in /etc/ssl/certs...
15 added, 40 removed; done.
Setting up libx11-data (2:1.6.4-3+deb9u3) ...
Setting up libpython2.7-stdlib:armhf (2.7.13-2+deb9u4) ...
Setting up libidn11:armhf (1.33-1+deb9u1) ...
Setting up libdbus-1-3:armhf (1.10.32-0+deb9u1) ...
Setting up python2.7-minimal (2.7.13-2+deb9u4) ...
Setting up libpython3.5-minimal:armhf (3.5.3-1+deb9u3) ...
Setting up vim-tiny (2:8.0.0197-4+deb9u3) ...
Setting up libraspberrypi0 (1.20190819~stretch-1) ...
Setting up libwbclient0:armhf (2:4.5.16+dfsg-1+deb9u3) ...
Setting up libk5crypto3:armhf (1.15-1+deb9u2) ...
Setting up libisc160:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up libraspberrypi-doc (1.20190819~stretch-1) ...
Setting up libraspberrypi-dev (1.20190819~stretch-1) ...
Setting up libpython3.5-stdlib:armhf (3.5.3-1+deb9u3) ...
Setting up libgnutls30:armhf (3.5.8-5+deb9u5) ...
Setting up libx11-6:armhf (2:1.6.4-3+deb9u3) ...
Setting up libdns-export162 (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up python2.7 (2.7.13-2+deb9u4) ...
Setting up file (1:5.30-1+deb9u3) ...
Setting up python3.5-minimal (3.5.3-1+deb9u3) ...
Setting up libisccc140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up libfreetype6-dev (2.6.3-3.2+deb9u2) ...
Setting up libldap-2.4-2:armhf (2.4.44+dfsg-5+deb9u8) ...
Setting up systemd (232-25+deb9u12) ...
addgroup: The group `systemd-journal' already exists as a system group. Exiting.
Setting up libkrb5-3:armhf (1.15-1+deb9u2) ...
Setting up dbus (1.10.32-0+deb9u1) ...
A reboot is required to replace the running dbus-daemon.
Please reboot the system when convenient.
Setting up libraspberrypi-bin (1.20190819~stretch-1) ...
Setting up python3.5 (3.5.3-1+deb9u3) ...
Setting up libpython3.5:armhf (3.5.3-1+deb9u3) ...
Setting up systemd-sysv (232-25+deb9u12) ...
Setting up libgssapi-krb5-2:armhf (1.15-1+deb9u2) ...
Setting up openssh-client (1:7.4p1-10+deb9u7) ...
Setting up libdns162:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up libpam-systemd:armhf (232-25+deb9u12) ...
Setting up libcurl3:armhf (7.52.1-5+deb9u13) ...
Setting up libcurl3-gnutls:armhf (7.52.1-5+deb9u13) ...
Setting up nfs-common (1:1.3.4-2.1+deb9u1) ...
Setting up libisccfg140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up openssh-sftp-server (1:7.4p1-10+deb9u7) ...
Setting up libbind9-140:armhf (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up bind9-host (1:9.10.3.dfsg.P4-12.3+deb9u8) ...
Setting up apt-transport-https (1.4.11) ...
Setting up curl (7.52.1-5+deb9u13) ...
Setting up openssh-server (1:7.4p1-10+deb9u7) ...
Setting up ssh (1:7.4p1-10+deb9u7) ...
Processing triggers for initramfs-tools (0.130) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Processing triggers for ca-certificates (20200601~deb9u1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.

Then install Netatalk...

root@raspberrypi:~# apt-get install netatalk
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  cracklib-runtime db-util db5.3-util libavahi-client3 libcrack2 libcups2 libpam-cracklib lsof rc wamerican
Suggested packages:
  cups-common texlive-base-bin groff quota
The following NEW packages will be installed:
  cracklib-runtime db-util db5.3-util libavahi-client3 libcrack2 libcups2 libpam-cracklib lsof netatalk rc wamerican
0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,995 kB of archives.
After this operation, 6,969 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://archive.raspberrypi.org/debian stretch/main armhf libpam-cracklib armhf 1.1.8-3.6+rpi1 [86.2 kB]
Get:2 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf lsof armhf 4.89+dfsg-0.1 [311 kB]
Get:3 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf wamerican all 7.1-1 [272 kB]
Get:4 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libcrack2 armhf 2.9.2-5 [53.0 kB]
Get:5 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf cracklib-runtime armhf 2.9.2-5 [148 kB]
Get:6 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf db5.3-util armhf 5.3.28-12+deb9u1 [61.7 kB]
Get:7 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libavahi-client3 armhf 0.6.32-2 [51.3 kB]
Get:8 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf libcups2 armhf 2.2.1-8+deb9u6 [273 kB]
Get:9 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf rc armhf 1.7.4-1 [77.3 kB]
Get:10 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf db-util all 5.3.1 [2,782 B]
Get:11 http://mirror.internode.on.net/pub/raspbian/raspbian stretch/main armhf netatalk armhf 2.2.5-2+deb9u1 [658 kB]
Fetched 1,995 kB in 7s (278 kB/s)
Preconfiguring packages ...
Selecting previously unselected package lsof.
(Reading database ... 34874 files and directories currently installed.)
Preparing to unpack .../00-lsof_4.89+dfsg-0.1_armhf.deb ...
Unpacking lsof (4.89+dfsg-0.1) ...
Selecting previously unselected package wamerican.
Preparing to unpack .../01-wamerican_7.1-1_all.deb ...
Unpacking wamerican (7.1-1) ...
Selecting previously unselected package libcrack2:armhf.
Preparing to unpack .../02-libcrack2_2.9.2-5_armhf.deb ...
Unpacking libcrack2:armhf (2.9.2-5) ...
Selecting previously unselected package cracklib-runtime.
Preparing to unpack .../03-cracklib-runtime_2.9.2-5_armhf.deb ...
Unpacking cracklib-runtime (2.9.2-5) ...
Selecting previously unselected package db5.3-util.
Preparing to unpack .../04-db5.3-util_5.3.28-12+deb9u1_armhf.deb ...
Unpacking db5.3-util (5.3.28-12+deb9u1) ...
Selecting previously unselected package libavahi-client3:armhf.
Preparing to unpack .../05-libavahi-client3_0.6.32-2_armhf.deb ...
Unpacking libavahi-client3:armhf (0.6.32-2) ...
Selecting previously unselected package libcups2:armhf.
Preparing to unpack .../06-libcups2_2.2.1-8+deb9u6_armhf.deb ...
Unpacking libcups2:armhf (2.2.1-8+deb9u6) ...
Selecting previously unselected package libpam-cracklib:armhf.
Preparing to unpack .../07-libpam-cracklib_1.1.8-3.6+rpi1_armhf.deb ...
Unpacking libpam-cracklib:armhf (1.1.8-3.6+rpi1) ...
Selecting previously unselected package rc.
Preparing to unpack .../08-rc_1.7.4-1_armhf.deb ...
Unpacking rc (1.7.4-1) ...
Selecting previously unselected package db-util.
Preparing to unpack .../09-db-util_5.3.1_all.deb ...
Unpacking db-util (5.3.1) ...
Selecting previously unselected package netatalk.
Preparing to unpack .../10-netatalk_2.2.5-2+deb9u1_armhf.deb ...
Unpacking netatalk (2.2.5-2+deb9u1) ...
Setting up lsof (4.89+dfsg-0.1) ...
Setting up rc (1.7.4-1) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Processing triggers for systemd (232-25+deb9u12) ...
Setting up db5.3-util (5.3.28-12+deb9u1) ...
Setting up libcrack2:armhf (2.9.2-5) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up libavahi-client3:armhf (0.6.32-2) ...
Setting up wamerican (7.1-1) ...
Setting up libcups2:armhf (2.2.1-8+deb9u6) ...
Setting up netatalk (2.2.5-2+deb9u1) ...
Setting up cracklib-runtime (2.9.2-5) ...
Setting up db-util (5.3.1) ...
Setting up libpam-cracklib:armhf (1.1.8-3.6+rpi1) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Processing triggers for systemd (232-25+deb9u12) ...

Do make sure you check the version of Netatalk! As you can see above, 2.2.5-2+deb9u1 was installed as expected.

Create the first folder to be shared. Later I'll mount the NAS and share that, but for now, we'll just get this folder going.

root@raspberrypi:~# cd ~
root@raspberrypi:~# mkdir AFP_Share
root@raspberrypi:~# ls -l
total 4
drwxr-xr-x 2 root root 4096 Feb 26 05:14 AFP_Share

Lol, yes, the above folder was created under the root user! Make sure you create it under a user who you intend to connect with! From here, edit the config to make sure atalkd starts.

root@raspberrypi:~# nano /etc/default/netatalk

You'll be in nano here, so just scroll to the bottom, uncomment the ATALKD_RUN line and change the value to yes.

#########################################################################
# AppleTalk specific configuration (legacy)
#########################################################################

#### Set which legacy daemons to run.
#### If you need AppleTalk, run atalkd.
#### papd, timelord and a2boot are dependent upon atalkd.
ATALKD_RUN=yes
#PAPD_RUN=no
#TIMELORD_RUN=no
#A2BOOT_RUN=no

#### Control whether the daemons are started in the background.
#### If it is dissatisfied that legacy atalkd starts slowly, set "yes".
#### In case using systemd/systemctl, this is not so significant.
#ATALK_BGROUND=no

#### Set the AppleTalk Zone name.
#### NOTE: if your zone has spaces in it, you're better off specifying
####       it in atalkd.conf
#ATALK_ZONE=@zone

Next up, we need to configure what we're sharing.

root@raspberrypi:~# nano /etc/netatalk/AppleVolumes.default

In Nano once again, add the AFP_Share line to the bottom as follows:

# The line below sets some DEFAULT, starting with Netatalk 2.1.
:DEFAULT: options:upriv,usedots

# By default all users have access to their home directories.
~/                      "Home Directory"
~/AFP_Share "AFP Share"

# End of File

Now we also want to enable the newer Apple Filing Protocol so newer machines can also access.

root@raspberrypi:~# nano /etc/netatalk/afpd.conf

Add the line as follows to the very end of the file:

# default:
# - -tcp -noddp -uamlist uams_dhx.so,uams_dhx2.so
- -transall -uamlist uams_clrtxt.so,uams_dhx.so,uams_dhx2.so

And then finally, configure atalkd:

root@raspberrypi:~# nano /etc/netatalk/atalkd.conf

Add the line to the bottom as follows:

#
# Format of lines in this file:
#
#    interface [ -seed ] [ -router | -dontroute ]
#       [ -phase { 1 | 2 } ] [ -addr net.node ]
#       [ -net first[-last] ] [ -zone ZoneName ] ...
#
# -seed only works if you have multi-interfaces.  Any missing arguments are
# automatically configured from the network.  Note: lines can't actually be
# split, tho it's a good idea.
#
# -router is like -seed but it allows single-interface routing. -dontroute
# disables routing for the specified interface.
#
# Some examples:
#
#       The simplest case is no atalkd.conf.  This works on most platforms
#       (notably not Solaris), since atalkd can discover the local interfaces
#       on the machine.
#
#       Very slightly more complicated:
#
#               le0
#       or
#               eth0
#
#       for Solaris/SunOS or Linux.
#
#       A much more complicated example:
#
#               le0 -phase 1
#               le1 -seed -phase 2 -addr 66.6 -net 66-67 -zone "No Parking"
#
#       This turns on transition routing between the le0 and le1
#       interfaces on a Sun.  It also causes atalkd to fail if other
#       routers disagree about it's configuration of le1.
#

eth0 -phase 2 -net 0-65534 -addr 65280.163

We're done, reboot!

root@raspberrypi:~# sudo shutdown -r now

And then, you just need to cross your fingers and open Chooser on a Macintosh.

Picture-10

TADA! Logging in is fun... as you need a password less than 8 characters. The default raspbian password is raspberry and yes, that's 9 characters! Change it with passwd, making sure you have enough fun trying to think of something long enough, but not overly complicated. (I chose macntosh)

pi@raspberrypi:~ $ passwd
Changing password for pi.
(current) UNIX password:
New password:
BAD PASSWORD: it is too short
New password:
Retype new password:
passwd: password updated successfully

Then, use pi/macntosh for your credentials when logging in from Chooser! Mount away, choose to mount at start... and then copy stuff over!

Picture-11 Picture-12 Picture-13

Copy what? Screenshots! Command+Alt+3 is the screenshot button on OS9. Oh, and don't just copy the Pict over to Windows, convert it first! (Or do it here, just make sure to add the .pict extension first!)

Don't forget to check from the PI as to what's been stored. Apple has a lot of fun with hidden folders and really likes to make a mess!

pi@raspberrypi:~ $ ls
AFP_Share  Network Trash Folder  Temporary Items  TheVolumeSettingsFolder
pi@raspberrypi:~ $ cd AFP_Share/
pi@raspberrypi:~/AFP_Share $ ls
Network Trash Folder  Picture 10  Picture 11  Picture 12  Picture 13  Temporary Items  TheVolumeSettingsFolder

I enjoy their strong use of Camels. Finally, you might then want to use this tutorial on Samba so that you can copy stuff from your Windows machines.

The icing on the cake...

I already had a raspberry pi on my network, hostname:raspberrypi, that, well, held its dominance thanks to Plex and Webcam streaming. Therefore... this one needed a new name:

root@raspberrypi:~# sudo raspi-config
	   ┌──────────────────────────────────────────────────────────┐
	   │ Please enter a hostname                                  │
	   │                                                          │
	   │ applepi_________________________________________________ │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │                                                          │
	   │              <ok>                  <cancel>              │
	   │                                                          │
	   └──────────────────────────────────────────────────────────┘

The result? Perfect!

windows-shares

That'll do pig, that'll do!

Sharing Mounted Volumes

So, I had this plan.... I was really happy once ApplePi was showing up in Chooser without any forced-searching of IPs. What I then wanted was ApplePi to share the AFP share from the NAS as it had a library of crap. Initially I mounted the disk as a sub-folder via SAMBA from the NAS onto ApplePi. This sub-folder showed on the Macintoshes in the AppleShare folder, but the resource-forks were trashed. All files showed up as unknown format.

I then thought to myself: Why can't I just mount the AFP share as AFP onto ApplePi and then re-share it out. This might have worked, but all AFP clients failed me.

After a little light reading I realised that the nested mounting I tried first was wrong, as the databases would conflict. I then decided to mount via SAMBA again onto /mnt and add another line in AppleVolumes.default to share that out. I would've gone and browsed to it, but I read the end of the warnings in that netatalk doco where it mentioned that different versions of netatalk have differently-versioned metadata databases. I assume that sharing out on ApplePi would've trashed the NAS's metatalk DB.

In the end I chose to just mount both drives on the PowerCenter and copy the bits over that I needed for all.

Filed under: Apple No Comments
25Feb/210

HP Dual PIII-500 Motherboard

I had a good to-and-fro with the Seller on this item. He initially wanted ~AUD500 for it, so I low-balled just under 200. He didn't accept, but then proceeded to get zero bids. It was then re-listed at an auction price of AUD99 and didn't go for much more. If you look on eBay US, seems they're still fetching quite a few dollars! Anyway, it's a dual P3-500 board with on-board SCSI! Nice. The only thing I didn't know was what server it had been ripped out of.

DSC02154

DSC02155 DSC02158 DSC02159

DSC02165 DSC02173 DSC02188

Looking at the photos now, I see that there's a glaringly-obvious Hewlett Packard logo hidden below the AGP slot... something I totally missed when the board arrived. So instead, after a little googlin', I had determined that it was the motherboard from a HP Compaq Netserver E60. This was thanks to the "exchange" code/part-number of "D7140-63000" labelled on one of the ICs.

Front Panel Connector Pinout

Found that someone else had restored such a unit, but not so recently. A private message to the author saw no response. What did help though, were the pictures in that post. IT shows that there's no reset button? Just Power LED, Power Switch and HDD LED.

DSC02168

So, what to do? Grab a screwdriver and poke the pins! Actually, first I worked out which pin was ground via a multimeter. Turns out it's second-from-the-left, but there's only one ground, so that meant getting the LEDs lit will be tricky. After a bit more poking, the left-most pin was determined to be the power switch and, before I knew it, the motherboard speaker was beeping awfully as it had no Video or RAM.

DSC02191

HDD activity wasn't on the header, so I just used the connection directly on the SCSI drive.

A Suitable Video Card

I've had this crazy ATI Rage 128 All-In-Wonder in as box for ages and have never had a good reason to test it. Thankfully, this motherboard has AGP, so let's do it!

DSC02073

With this card in place, most of the operating systems I tried had issues. Drivers, resolutions, framebuffers... this card seems to be a bit of a Unicorn and really only good for Windows. Fortunately, a little bit of effort paid off and it ended up working on all systems. For future reference, here's a possible pinout for the video out breakout cable.

So, What RAM?

The manual indicates that the motherboard supports up to four SDRAM DIMMS, for a maximum total of 1GB. These are expected to be full server-grade and I had quite a few lying aorund. The actual specifications are: 64MB, 128MB, or 256MB unbuffered, 72 bits wide, ECC single-bit correcting, multi-bit detecting. So, those huge DIMMs in the box, with huge stickers and terms like 'sync':

DSC02149

Finally, I get to use the ECC SDRAM modules that seem to be very popular (i.e. in everyone's junk box gathering dust) and never usable in standard desktop motherboards! And, summing up what worked, I could only get to 384mb RAM. I tried mixing ECC and Non-ECC, but this threw a really ugly error. Interestingly it can obviously tell if the RAM DIMM is Non-ECC. Also mixing ECC 133mhz with 100mhz would throw shitty beeping. Finishing the RAM combination testing, I then just put in normal PC100 SDRAM and the bloody thing just booted straight up! No errors, no warning that this was pleb-RAM and not servah-RAM? This was a better option as I had enough laying around to get up to 512mb.

Microcode Update Block Missing

This error appears on HP NetServers when third-party CPUs are used which didn't come with a microcode block flashed onto them.

DSC02088

Could it be that these CPUs have just lost the block that had been previously flashed? Regardless, someone else has already solved this issue, but the link to HP for the new BIOS to flash is well gone! A quick google turned up this BIOS update, but it wants Windows and the filename ends in FR?... I'll get to that after I've mucked around with other OSsss.

Redhat Linux 7.2

And then for some Redhat! I already had the CDs burnt thanks to installing it on the Sony Vaio Z505. The installation was a breeze, but the installer did try to trick me into selecting the wrong video card.

DSC02079

DSC02091 DSC02095 DSC02097

Instead, choose the All-In-Wonder 20-ish lines above. Don't forget to test the mode!

DSC02098

Interestingly, as above, the mode worked fine during setup! Not so well once it then tried to boot... I'd selected the graphical login during install, so on first reboot, the machine produced a blank screen when it tried to load up XDM. It was still the correct resolution, but the whole machine had actually frozen up! No keyboard, no mouse, nothing... SSH wasn't running, so I couldn't connect underneath either! What to do? I could single-user and work out how to switch to text login, or re-install. I chose the latter to save time and effort.

Second time around, a login! startx still produced a blank screen though... at the correct resolution! I rebooted once more, but this time I logged in via SSH and ran startx remotely and...

Last login: Wed Feb 24 03:38:38 2021
[root@localhost root]# startx


XFree86 Version 4.1.0 (Red Hat Linux release: 4.1.0-3) / X Window System
(protocol Version 11, revision 0, vendor release 6510)
Release Date: 2 June 2001
        If the server is older than 6-12 months, or if your card is
        newer than the above date, look for a newer version before
        reporting problems.  (See http://www.XFree86.Org/FAQ)
Build Operating System: Linux 2.4.9-31smp i686 [ELF]
Build Host: stripples.devel.redhat.com

Module Loader present
(==) Log file: "/var/log/XFree86.0.log", Time: Wed Feb 24 03:43:04 2021
(==) Using config file: "/etc/X11/XF86Config-4"
Markers: (--) probed, (**) from config file, (==) default setting,
         (++) from command line, (!!) notice, (II) informational,
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) ServerLayout "Anaconda Configured"
(**) |-->Screen "Screen0" (0)
(**) |   |-->Monitor "Monitor0"
(**) |   |-->Device "ATI All-in-Wonder 128 Pro AGP"
(**) |-->Input Device "Mouse0"
(**) |-->Input Device "Keyboard0"
(**) XKB: rules: "xfree86"
(**) XKB: model: "pc105"
(**) XKB: layout: "us"
(**) FontPath set to "unix/:7100"
(**) RgbPath set to "/usr/X11R6/lib/X11/rgb"
(==) ModulePath set to "/usr/X11R6/lib/modules"
(--) using VT number 7

(II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a
(II) Module bitmap: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/libpcidata.a
(II) Module pcidata: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 0.1.0
(II) Loading /usr/X11R6/lib/modules/libscanpci.a
(II) Module scanpci: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 0.1.0
(II) Unloading /usr/X11R6/lib/modules/libscanpci.a
(--) PCI:*(1:0:0) ATI Rage 128 RF rev 0, Mem @ 0xf8000000/26, 0xf4200000/14, I/O @ 0x9000/8
(II) Loading /usr/X11R6/lib/modules/extensions/libGLcore.a
(II) Module GLcore: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/extensions/libdbe.a
(II) Module dbe: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/extensions/libextmod.a
(II) Module extmod: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/linux/libfbdevhw.a
(II) Module fbdevhw: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 0.0.2
(II) Loading /usr/X11R6/lib/modules/extensions/libpex5.a
(II) Module pex5: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/extensions/libdri.a
(II) Module dri: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/linux/libdrm.a
(II) Module drm: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/extensions/libglx.a
(II) Module glx: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/extensions/librecord.a
(II) Module record: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.13.0
(II) Loading /usr/X11R6/lib/modules/extensions/libxie.a
(II) Module xie: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/drivers/r128_drv.o
(II) Module r128: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 4.0.1
(II) Loading /usr/X11R6/lib/modules/drivers/ati_drv.o
(II) Module ati: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 6.3.6
(II) Loading /usr/X11R6/lib/modules/input/mouse_drv.o
(II) Module mouse: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) ATI: ATI driver (version 6.3.6) for chipsets: ati, ativga
(II) R128: Driver for ATI Rage 128 chipsets: ATI Rage 128 RE (PCI),
        ATI Rage 128 RF (AGP), ATI Rage 128 RG (AGP), ATI Rage 128 RK (PCI),
        ATI Rage 128 RL (AGP), ATI Rage 128 SM (AGP),
        ATI Rage 128 Pro PD (PCI), ATI Rage 128 Pro PF (AGP),
        ATI Rage 128 Pro ULTRA TF (AGP), ATI Rage 128 Pro ULTRA TL (AGP),
        ATI Rage 128 Pro ULTRA TR (AGP), ATI Rage 128 Mobility LE (PCI),
        ATI Rage 128 Mobility LF (AGP), ATI Rage 128 Mobility MF (AGP),
        ATI Rage 128 Mobility ML (AGP)
(II) RADEON: Driver for ATI Radeon chipsets: ATI Radeon QD (AGP),
        ATI Radeon QE (AGP), ATI Radeon QF (AGP), ATI Radeon QG (AGP),
        ATI Radeon VE QY (AGP), ATI Radeon VE QZ (AGP),
        ATI Radeon Mobility LW (AGP), ATI Radeon Mobility LY (AGP),
        ATI Radeon Mobility LZ (AGP)
(--) Assigning device section with no busID to primary device
(--) Chipset ATI Rage 128 RF (AGP) found
(II) Loading /usr/X11R6/lib/modules/libvgahw.a
(II) Module vgahw: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 0.1.0
(II) R128(0): PCI bus 1 card 0 func 0
(**) R128(0): Depth 16, (--) framebuffer bpp 16
(II) R128(0): Pixel depth = 16 bits stored in 2 bytes (16 bpp pixmaps)
(==) R128(0): Default visual is TrueColor
(==) R128(0): RGB weight 565
(II) R128(0): Using 6 bits per RGB (8 bit DAC)
(II) Loading /usr/X11R6/lib/modules/linux/libint10.a
(II) Module int10: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) R128(0): initializing int10
(II) R128(0): Primary V_BIOS segment is: 0xc000
(--) R128(0): Chipset: "ATI Rage 128 RF (AGP)" (ChipID = 0x5246)
(--) R128(0): Linear framebuffer at 0xf8000000
(--) R128(0): MMIO registers at 0xf4200000
(--) R128(0): VideoRAM: 16384 kByte (128-bit SDR SGRAM 1:1)
(II) R128(0): PLL parameters: rf=2864 rd=63 min=12500 max=25000; xclk=9000
(II) Loading /usr/X11R6/lib/modules/libddc.a
(II) Module ddc: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/libvbe.a
(II) Module vbe: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) R128(0): VESA BIOS detected
(II) R128(0): VESA VBE DDC supported
(II) R128(0): Manufacturer: PTS  Model: 30d  Serial#: 214342
(II) R128(0): Year: 2005  Week: 22
(II) R128(0): EDID Version: 1.3
(II) R128(0): Analog Display Input,  Input Voltage Level: 0.700/0.700 V
(II) R128(0): Sync:  Separate
(II) R128(0): Max H-Image Size [cm]: horiz.: 34  vert.: 27
(II) R128(0): Gamma: 2.50
(II) R128(0): DPMS capabilities: Off; RGB/Color Display
(II) R128(0): First detailed timing is preferred mode
(II) R128(0): redX: 0.630 redY: 0.330   greenX: 0.300 greenY: 0.600
(II) R128(0): blueX: 0.148 blueY: 0.098   whiteX: 0.310 whiteY: 0.330
(II) R128(0): Supported VESA Video Modes:
(II) R128(0): 720x400@70Hz
(II) R128(0): 640x480@60Hz
(II) R128(0): 640x480@67Hz
(II) R128(0): 640x480@72Hz
(II) R128(0): 640x480@75Hz
(II) R128(0): 800x600@56Hz
(II) R128(0): 800x600@60Hz
(II) R128(0): 800x600@72Hz
(II) R128(0): 800x600@75Hz
(II) R128(0): 832x624@75Hz
(II) R128(0): 1024x768@60Hz
(II) R128(0): 1024x768@70Hz
(II) R128(0): 1024x768@75Hz
(II) R128(0): 1280x1024@75Hz
(II) R128(0): Manufacturer's mask: 0
(II) R128(0): Supported Future Video Modes:
(II) R128(0): #0: hsize: 1280  vsize 1024  refresh: 60  vid: 32897
(II) R128(0): Supported additional Video Mode:
(II) R128(0): clock: 108.0 MHz   Image Size:  337 x 270 mm
(II) R128(0): h_active: 1280  h_sync: 1328  h_sync_end 1440 h_blank_end 1688 h_border: 0
(II) R128(0): v_active: 1024  v_sync: 1025  v_sync_end 1028 v_blanking: 1066 v_border: 0
(II) R128(0): Ranges: V min: 60  V max: 75 Hz, H min: 30  H max: 80 kHz, PixClock max 140 MHz
(II) R128(0): Monitor name: 17JAGBLK-AV
(II) R128(0): Serial No: P2U052214342
(==) R128(0): Using gamma correction (1.0, 1.0, 1.0)
(II) R128(0): Monitor0: Using hsync range of 30.00-80.00 kHz
(II) R128(0): Monitor0: Using vrefresh range of 60.00-75.00 Hz
(II) R128(0): Clock range:  12.50 to 250.00 MHz
(II) R128(0): Not using mode "1400x1050" (hsync out of range)
(II) R128(0): Not using mode "1400x1050" (hsync out of range)
(II) R128(0): Not using default mode "640x350" (vrefresh out of range)
(II) R128(0): Not using default mode "640x400" (vrefresh out of range)
(II) R128(0): Not using default mode "720x400" (vrefresh out of range)
(II) R128(0): Not using default mode "640x480" (vrefresh out of range)
(II) R128(0): Not using default mode "800x600" (vrefresh out of range)
(II) R128(0): Not using default mode "800x600" (vrefresh out of range)
(II) R128(0): Not using default mode "1024x768" (vrefresh out of range)
(II) R128(0): Not using default mode "1024x768" (vrefresh out of range)
(II) R128(0): Not using default mode "1280x960" (hsync out of range)
(II) R128(0): Not using default mode "1280x1024" (hsync out of range)
(II) R128(0): Not using default mode "1600x1200" (hsync out of range)
(II) R128(0): Not using default mode "1600x1200" (hsync out of range)
(II) R128(0): Not using default mode "1600x1200" (hsync out of range)
(II) R128(0): Not using default mode "1600x1200" (hsync out of range)
(II) R128(0): Not using default mode "1792x1344" (hsync out of range)
(II) R128(0): Not using default mode "1792x1344" (bad mode clock/interlace/doublescan)
(II) R128(0): Not using default mode "1856x1392" (hsync out of range)
(II) R128(0): Not using default mode "1856x1392" (bad mode clock/interlace/doublescan)
(II) R128(0): Not using default mode "1920x1440" (hsync out of range)
(II) R128(0): Not using default mode "1920x1440" (bad mode clock/interlace/doublescan)
(--) R128(0): Virtual size is 1280x1024 (pitch 1280)
(**) R128(0): Default mode "1280x1024": 135.0 MHz, 80.0 kHz, 75.0 Hz
(--) R128(0): Display dimensions: (34, 27) cm
(--) R128(0): DPI set to (95, 96)
(II) Loading /usr/X11R6/lib/modules/libfb.a
(II) Module fb: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(II) Loading /usr/X11R6/lib/modules/libramdac.a
(II) Module ramdac: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 0.1.0
(II) Loading /usr/X11R6/lib/modules/libxaa.a
(II) Module xaa: vendor="The XFree86 Project"
        compiled for 4.1.0, module version = 1.0.0
(==) R128(0): Write-combining range (0xf8000000,0x1000000)

And then the SSH session timed out. Seems that the card driver has tried to instantiate the DRM driver and frozen. A lot of mucking around then ensued, but the answer is simple: The r128 X11 driver didn't load the r128 DRM kernel module, so when it tries to call it, it just locks up. The answer is to run insmod r128 prior to starting X. Of course, this wont work if you've chosen to go for the graphical login. To get it to start on boot, edit /etc/rc.d/rc.local and slap the insmod line in there.

DSC02103

If you've already installed a distro and can't do anything as it boots to a black screen each time, then you need to edit your bootloader config to get linux to boot into single-user mode. For grub, hit E when the boot menu appears, select the second line and hit E again. Navigate to the end of the line and add the word single.

DSC02141 DSC02144 DSC02147

Hit enter and then press B. Linux will then boot, mounting disks, and provide a shell prompt with you already logged in as root. Just edit rc.local from here, inserting the insmod r128 command, and reboot. From here, all was working perfectly. I hadn't tested the All-In-Wonder features though... Looks like I'd need Gatos. The instructions don't look that hard.

Back to that BIOS update, can I use Wine?

Wine was installed by default, and so I wondered if I could run the BIOS updater from Linux? I wasn't ready to install XP/98SE/ME just yet. I downloaded the file and gave it a go:

[root@localhost root]# wine
wineserver: chdir /root/.wine : No such file or directory
[root@localhost root]# mkdir .wine
[root@localhost root]# wine
Wine release 20010731

Usage: wine [options] [--] program_name [arguments]
The -- has to be used if you specify arguments (of the program)

Options:
   --debugmsg name  Turn debugging-messages on or off
   --dll name       Enable or disable built-in DLLs
   --dosver x.xx    DOS version to imitate (e.g. 6.22)
                    Only valid with --winver win31
   --help,-h        Show this help message
   --managed        Allow the window manager to manage created windows
   --version,-v     Display the Wine version
   --winver         Version to imitate (win95,nt40,win31,nt2k,win98,nt351,win30,win20)
[root@localhost root]# wine e60bios_fr.exe
x11drv: Can't open display:

Ok ok, let's start X...

snapshot3

Ok sure, it's just a WinZip Self-Extractor that makes a floppy image... can we extract the image?

[root@localhost root]# unzip e60bios_fr.exe
Archive:  e60bios_fr.exe
  inflating: makeunix.bat
  inflating: disk1.img
  inflating: rawrite2.exe
  inflating: disks.ico
 extracting: about.txt

Yes, yes we can. We don't have to use rawrite as Linux has dd, but we'll just check what's in that batch file:

[root@localhost root]# cat makeunix.bat
@echo off
echo Hewlett Packard Company Self extracting diskette Set
echo.
echo You will need 1 formatted diskette(s) to continue
echo.
echo Press Enter to Continue or Cntrl-C to end the job
pause ^>nul:
echo.
echo Diskette Creation disk1
echo NetServer E60 BIOS Update Diskette
echo Press Enter to Continue or  Cntrl-C to end the job
pause ^>nul:
echo.
rawrite2.exe -f disk1.img

Nothing special... just a dump straight to floppy. Let's do that, Linux-style! Before I format this floppy... what's on it?

marist-wad

Oh, just a WAD for DOOM II of our high school. Excuse the crappy image... I was a little excited to find a floppy from a drawer with ~20 year old data on it?! I'll write another post on that. Where as I?

[root@localhost root]# dd if=disk1.img of=/dev/fd0 bs=1024 conv=sync ; sync
1440+0 records in
1440+0 records out
[root@localhost root]# cd /mnt
[root@localhost mnt]# mount floppy/
[root@localhost mnt]# ls floppy/
config.sys  contents.abf  e60bios.fr  io.sys  language.dat  msdos.sys  phlash.exe  phlshwrp.exe  phlshwrp.hds  phlshwrp.ini  platform.bin
[root@localhost mnt]# ls -l floppy/
total 688
-r-xr-xr-x    1 root     root           29 Aug 18  1998 config.sys
-r-xr-xr-x    1 root     root          305 Oct 27  2000 contents.abf
-r-xr-xr-x    1 root     root       524288 Oct 27  2000 e60bios.fr
-r-xr-xr-x    1 root     root        40992 May 31  1994 io.sys
-r-xr-xr-x    1 root     root            2 Dec 10  1998 language.dat
-r-xr-xr-x    1 root     root        38166 May 31  1994 msdos.sys
-r-xr-xr-x    1 root     root        65605 Feb  9  1999 phlash.exe
-r-xr-xr-x    1 root     root        21179 Jan 13  1999 phlshwrp.exe
-r-xr-xr-x    1 root     root         6791 Dec 31  1997 phlshwrp.hds
-r-xr-xr-x    1 root     root         1739 Oct 27  2000 phlshwrp.ini
-r-xr-xr-x    1 root     root         1207 Jan 22  1999 platform.bin

Nice, there's our boot disk. Time to shutdown and boot the machine with the floppy inserted.

DSC02109 DSC02116 DSC02120

Make sure your flexible disk is set to a higher priority than your solid disk. And then learn french! Or.... cheat...

DSC02123

Note that it did mistranslate one 0 for an 8, but whatever, just do the next-next-finish:

DSC02141 DSC02130 DSC02131

And then it'll reboot by itself:

DSC02139

Yey! Microcode 0000000E installed!

Dodgy LAN Port

For the life of me, I couldn't work out why I had intermittent LAN connectivity whilst using the machine. It wasn't until I checked the LEDs at the back on the port to see that sometimes none were lit, other times just link and then finally activity also. On my LAN, there's always activity thanks to streaming South Yarra Railcam, so it was very strange to see only link lit up.

A quick jiggle of the cable saw that all change though. If I forced the cable away from the board, the lights would go out. On the contrary, pulling the cable down towards the motherboard saw the LAN port function 100% correctly. It seems that the contacts inside the socket were not making a good enough connection with the end of the cable and needed adjusting. Fortunately, the tweezers from the iFixit kit worked perfectly for grabbing each of the 8 contacts and bending them up. At the very back of the plug is a guide for each contact to slide down when the LAN cable is inserted, so I just made sure not to lift the contact wires past/out-of these.

BeOS R5 Professional

This took a little bit of re-learning. After acquiring the ISO, everything just installed perfectly. Google even, sorta, showed in NetPositive. I then tried to set up World O' Networking and, after it restarted the network server, nothing worked anymore. Even a ping from Terminal just threw: ping socket: name not found. A google for this error brought up an Arstechnica forum post from 1999 where a user had the same error! I re-installed BeOS and the network worked again... I re-installed WON and it died again. Reading the doco, it said that if I wanted to uninstall WON thoroughly, I had to go to /beos/system/boot and edit Netscript. Turns out this file didn't even exist! The WON setup had failed to copy in its substitute and had just renamed the old file. I grabbed it manually from the desktop and then everything booted up! But there were no computers to be found in the WON folder on the desktop.

Windows XP

As you'd pretty much eXPect, it all just worked perfectly. All CPUs online and all hardware flying along.

winxp-dual-p3-500

I installed the ATI drivers and even managed to half-capture my shitty megadrive clone. The picture wasn't healthy, but I don't know if I was expecting it to even work, let along show a picture!

Filed under: Retro No Comments
16Feb/210

Apple eMate 300 – ATA + Wifi

This little critter arrived in the post a while back after another bout of impulse-eBay-shopping. It was described as having a faulty touchscreen and bad hinges, so I got it for a deal! Of course, buying a broken unicorn is never a good idea, so I had my expectations managed for when it arrived if I couldn't get it to function.

DSC01729

DSC01734 DSC01730 DSC01732

DSC01735 DSC01738 DSC01739

As is always the case, the box was ripped open and the unit inspected on delivery day. It was very clean (albeit a little dusty) and showed very few signs of wear! I plugged it in straight away and was rewarded with a very black boot screen. The contrast can be set by the slider to the bottom-left of the screen. The volume is to the right of the contrast slider.

DSC01742

After the boot screen, I was presented with a standard touchscreen calibration program. Clicking the three points worked fine and so did the touchscreen!? I mentioned this to the seller and they thanked AusPost for bashing the unit around in transit. I don't think I've ever had a reason to thank them for such a service! Anyway, turns out this is an intermittent fault as the calibration started failing down the track; it'd get stuck in an infinite loop of calibration and never get to the main menu.

DSC01744

Anyway, with it booted and functional... I tinkered around and checked out what noises it could make... looking for that Eep. From here, it was thrown back in the box and forgotten about as I had the PowerBook Duo 230 to work on and I really needed to manage my time/projects appropriately!

Transferring data

You'll need a Serial Cable and either the Newton Connection Utility for OS9 and lower or the NCX for OSX. I installed the former on my PowerCenter (running OS 9.1) and all was a breeze. Make sure you extract all three disk images and then run the installer. It'll ask to reboot, so do so.

DSC01747 DSC01749 DSC01750

DSC01753 DSC01754 DSC01758

Once back up, connect your eMate to your computer with a serial cable via the printer port and configure Newton Connection Utility accordingly...

DSC01763

Now on the eMate, open up the Dock application. You'll be prompted to select the transport method and then, fingers crossed, you'll connect to your machine!

DSC01759 DSC01760 DSC01761

And on the PC... Connected!

DSC01773

From here, when installing packages, you'll need to use the PackType application to re-add metadata (resource fork stuff) to any PKG you've downloaded. If you don't do this, then the PKG files wont appear in the file browser when you choose Install Package above. Note there's also an article here at UNNA on setting up extension handlers properly so that downloaded PKGs are associated correctly... but they seem to refer to a package installation application which must come with NCX as it wasn't part of NCU for OS 9 or lower.

DSC01782

Cool... we can now drop files across... let's get some Mass Storage PCMCIA cards going!

Storage

This unit has a PCMCIA slot on the side, so I wanted to test what devices I could plug into it. I've gathered quite a collection of random PCMCIA cards, so I thought I'd just slap'em in and see what stuck. Straight away there was failures all around as supposedly these eMates only want to use Linear PCMCIA Memory Cards. Linear? Dunno.. but there's some in the USA on eBay and I can't be bothered waiting that long.

DSC01797

Anywho... turns out that you can install an ATA driver package and just use ATA cards! The driver is over here and is free, whereas it used to cost money when these things were relevant. Download the ATA Support driver and install it.

DSC01786 DSC01787 DSC01790

DSC01792

After a reboot, I started trying cards. My Clik card made an awful noise and failed to work...

DSC01799

I then tried the CF to PCMCIA with the 128mb card in it and it worked perfectly! There were a few steps to jump through to get the card partitioned... make sure your card has nothing valuable on it!

DSC01801 DSC01803 DSC01804

DSC01806 DSC01807 DSC01808

DSC01809

From here, I tried to save my data to the card. That's easy enough, but I tell you what, trying to navigate the system and find where you've saved files is slightly confusing!

DSC01810

Just to help out... whenever you're in the main menu, you can use the top-right dropdown to select the storage and then find your files.

DSC01817

In the main menu, Command-O doesn't open... it switches between a condensed list or back to icon mode. Fortunately, when you're in Works, Command-O does actually bring up the File Open dialog!

Networking with wireless

You'll find a list of compatible cards here and instructions on how to install the software here. Again, all software is downloaded from kallysis.com.

DSC01828 DSC01831 DSC01833

Install the software in the order specified and then insert your card! My Buffalo came up recognised as a Melco? I therefore chose Buffalo in the list when configuring the access point and had failures everywhere. It seems that Buffalo provided a white-label card, exactly as mine, to Melco who slapped their own brand on and hence my confusion.

DSC01836 DSC01838 DSC01839

Selecting the correct card and then turning on AppleTalk got my PowerCenter180 listed... but it just timed out when trying to connect. I then tried NetHopper 3.2 and got limited results...

DSC01852 DSC01863 DSC01864

DSC01869

After a few reboots, I got stuck in a calibration loop and couldn't actually get back into the main menu of the eMate. I initially thought it was due to installed software, but it turned out to be much worse...

Touchscreen Calibration and Hinges

This unit slams shut when you gently try to close it and, thanks to the weird calibration loop above, it was time to pull the entire thing open and check out what was going on. Supposedly these can implode and ruin the LCD data cable, so I didn't want to let the loose springs linger. Following the amazing guide at pda-soft, I set to work pulling the unit apart...

DSC01913

Multi-tasking while waiting for a long-running database query to execute, I found the link at the bottom of the page above describing what to do if the cable is damaged, or the hinges are broken.

DSC01918

Returning to my eMate, I desoldered the required wires and checked out the hinges... bugger! Not-quite-punctured... but well-damaged. No wonder I got stuck in a calibration loop! Time to continue totally dismantling this unit to extract the pieces that need fixing. Thanks to the instructions.. the culprits were out in no time...

DSC01929

The hinges have now been out-sourced to a friend who is very good with metalwork. I happily punctured a digit trying to bend the springs with two pairs of pliers... so gave up pretty quickly. (But then I finally got around to fixing the hinges!)

Filed under: Apple No Comments
12Feb/211

Apple PowerBook Duo 230 – Repairing the Caps Lock LED

So, I accidently removed it whilst cleaning the keyboard when this unit arrived. Fortunately, I didn't lose it, so I started pondering the best method to stick the LED back down to the plastic film. The traces on the plastic are made of a conductive compound that can supposedly be soldered? When I tried... it all just melted! Hence the hole above where the LED should be.

DSC01664

Above, you'll see that I'm going to repair this in-situ as popping all the keys out once more is something I don't even dream about.

Circuit Pens

So, from Jaycar, you can buy expensive circuit pens that supposedly allow you to draw conductive lines on surfaces. I've had one in the soldering kit for a while and grabbed it to try and fix this.

DSC01668

I moved the LED into position and used the circuit pen to dab the bottom leg, providing enough goo to cover onto the actual trace on the plastic film.

DSC01661

Letting this dry for a day, I then got a piece of very small wire and manually joined the top leg to the other trace. It worked fine! It worked fine until I bumped the LED and then the whole thing just flipped off the board. Turns out you can't use the circuit pens to glue things in place... you need to make sure they wont move first!

Tin Foil

Second attempt was from some googlin' that I don't need to bring up. Someone wrote that tin foil works well to conduct between the traces onboard and whatever you need to connect to. This made sense, so I cut some TINY pieces and stuck them under tape so that I could draw my own circuits. It actually didn't work too bad, but the light would fade in and out depending on where you were typing on the keyboard.

Winding/Transformer Wire

Ok, the final answer is to solder wiring to the LED's legs and then either run these along the traces on the mylar or run them all the way to the circuit board underneath. The latter will cause issues for the next human/robot who opens this PowerBook, but will prove to be the best fix. I chose the former first, just to see if I could do it.

DSC01677

De-soldering the crap that was on the ends of the LED's legs was a little challenging. It was actually the trace compound from the keyboard membrane and it didn't really want to melt. After a little coercion it finally cleaned off. From there, I tinned up the winding wire and soldered long lengths onto each side.

DSC01690

These were then trimmed and tinned. The next part was the hardest in this whole task: place LED where it should be glued down, twist one wire into shape of trace, twist other wire. Sounds easy enough, but without the unit being stuck in place, the wires would easily just bend out of shape and head in the wrong directions. I didn't really want to glue it first, just in case this whole experiment fails!

DSC01697

I also chose the stupidest place to try and place the winding wires... on a curve in the traces? Jeez... I should've made them a little longer and put them both on the vertical straight areas. Anyway... with a lot of adjusting, the wires lined up! And.....!?

DSC01673

NICE! A solid keyboard Caps Lock light!

Filed under: Apple 1 Comment
2Feb/210

Apple PowerBook Duo 230 – Networking

So, after getting the keyboard working again on this PowerBook Duo 230, it was time to connect it to the big-bad-internet. Back in the day, this little laptop was all about portability and so therefore meant a small form-factor and a very limited set of ports! On the back, you get the standard Printer/Modem Serial Port, a docking port and an optional internal fax/modem.

DSC01643 DSC01640 DSC01644

To get networking running, we'll be using the serial port and a bridge, of some description...

Asante AppleTalk Bridge

Back in the day, you'd dial-up from the hotel room you were staying in and get work done. Nowadays... it's all Wireless, so this laptop is well out of it's depth. Fortunately, we can still use ethernet via the use of an AppleTalk Bridge.

DSC01614

DSC01646 DSC01616 DSC01619

I initially tried to make a pseudo-wireless network with my Vonets Wireless bridge. Unfortunately, with this setup I was unable to list any AppleTalk Servers in Chooser. As soon as I plugged in ethernet, the TX/RX lights went a lot crazier and A2SERVER appeared! So.. after a bit of REALLY SLOW copying... what can we do with this?

DSC01625

DSC01629 DSC01630 DSC01631

DSC01634

Yesss... but let's test out a software bridge... These hardware bridges are expensive!

Standard LocalTalk

Using a standard serial cable, you can connect your laptop to another Macintosh. I was surprised with how easy this was... you don't even need a special serial cable!? I would've at-least expected a proprietary Apple serial crossover cable. With a cable I had used for the bridge abvoe, I just plugged it between the Power Center and the PowerBook.

DSC01650 DSC01652 DSC01654

And, just like that, it worked!

Apple LocalTalk Bridge

Another method is via Apple's LocalTalk Bridge software. Using the above serial connection, you can supposedly have the other Macintosh route LocalTalk traffic onto the Ethernet network via the LocalTalk Bridge software. Supposedly you just drop the control panel into the System folder and reboot. Unfortunately... I couldn't get it working easily... but didn't really try too hard!

DSC01659

Meanwhile, if you, like me, can't be bothered getting Apple's LocalTalk Bridge software to run, Low-end Mac has a great write-up on the usage of other bridge software.

AppleTalk tunnels over the Internet

Finally, like we used to do with IPX tunnels, you can even bridge AppleTalk via bbraun's AppleTalk Bridge Software. Unfortunately, I don't have a remote Macintosh AppleTalk network to join, so I'll give this a miss for now!

Filed under: Apple No Comments
29Jan/210

Apple PowerBook Duo 230

This little beast arrived last week and I've finally cleared the workspace to work on it. I've been on a bit of a buying-frenzy since christmas, so there should be some random things appearing on here in the next few weeks.

DSC01539

Anyway, it was cheap because it's damaged. It's reported to have a non-responsive keyboard, a broken screen latch and a poor install of System 7.6. The poor install is described as "every app, when double-clicking, just throws error -39".

Keyboard

So, turns out people have fixed these before. That's a cute story.. but I have never thought of using an eraser on any of those goddamn-awful rubber buttons. Does it work?

DSC01591

Got the required utensil... next...

DSC01541 DSC01543 DSC01551

Ok, getting the keyboard out was easy enough... just don't follow these instructions. The author says to remove the bottom two screws... this is WRONG!. Remove the top three instead! Actually, I just checked the link... he's responded saying he'll fix it. I left a comment under the image where he points to the screws to remove. Anyway, where were we... Under the keyboard, you'll see how the keys are held in. I initially wanted to remove the backplane, but it's plastic-welded in place via the lugs.

DSC01548

Above, in the dark holes, you can see that the keys are held with two opposing clips. Turns out that, if from the top-side you just apply gentle pressure to the top-half of each key, it'll gently prise out!

DSC01571

DSC01574 DSC01576 DSC01578

Once the keys are off, you have direct access to the rubber sheet. This actually has the graphite contact rings under it, so don't be too rough!

DSC01586

As you can see, each key has a black ring directly under it that is pressed down onto the membranes. There are actually two membranes, but they act different to the regular press-them-together. Usually there's a third sheet in-between the two membranes that keeps them separate... instead we have two membranes that form opposing semi-circles that the rings under the keys connect.

DSC01584

So, from here, GENTLY rub the areas that receive contact from the rubber rings. There's a caps-lock LED to the left that you need to watch out for... what did I say? Watch out!

DSC01600 DSC01599 DSC01603

Too late... my eraser was too large, my force too strong. I recommend using a pencil with an eraser on the end... or just anything with a finer tip! I'll fix that LED at a later date. Let's assemble and see the difference.

DSC01608 DSC01610 DSC01612

Yessss! It works beautifully. Meanwhile, there's weird red dead pixels... but they don't line up with pixels... maybe there's something in the screen layers... fun for when I replace the latch later.

DSC01613

It's alive! Time to network it. And reformat once the MiniDock arrives.

Filed under: Apple No Comments
19Oct/200

Replacing the ear microphones on a Sony Aibo ERS-7

He'd arrived a few weeks back and gets energised a few hours per week... but he's a bad dog! He says "Good bye" in repsonse to me saying "Hello Aibo" and I'm going to blame him first... it can't be my mumbling? Can it? Just to be certain, I browsed around and found a DIY Repair Guide on Aibo Doctor. I quickly ordered a selection of microphones from element14 and got to work. Canine surgery is daunting!

The Microphones

As I always manage to get my orders wrong, I went ahead and ordered a selection of Microphones.

DSC00731

Note that an ERS-7 Aibo needs 6mm microphones, so you can see that one set is already incorrect. Next, there's directional and omni-directional. The microphones in Aibo are omni*, so I settled with the KECG2742TBL-A units.

Disassembling Aibo's Visor

Following the instructions here, one can disassemble Aibo's head to get to his ears. First step, remove the rubber earlobes by stretching them over the silver joint. Next, open his mouth and remove the two screws.

DSC00740

With these two removed, you can un-hook the rear of the bottom half of his head. This shell is not directly connected to his bottom jaw, so open his mouth fully and then push the whole lower-half back. With it unhooked, you can then bring it forward again and bring it over his jaw. With this piece out of the way, it's back to the front of his head where we need to remove the two outside screws on the metal plate inside his nose.

DSC00742

With those two out, you then need a longer screwdriver to get to the two screws deeper inside his skull. They're on either side of where his jaw would attach near his ears. See the image below, one screw on one side is in focus.

DSC00746

Finally, there's a clip on each side just in front of his ears, holding the visor on.

DSC00744

Very gently pry this open and the visor should lift up. You now have the option to disconnect all the cabling, but instead I just let it rest forward. Make sure it doesn't put undue pressure on the ribbon cables inside.

DSC00748

You now have access to the ear joints.

Disassembling Aibo's Ear Joints

Ok, this isn't the actual ear/microphone yet... before we get to that, there's a bit of fidgeting required to get the ear joints disassembled. When following the next steps, at no time will you need to apply excessive force! Doing so will most-probably damage poor Aibo. The ear joints are a two-part component and are built to be assembled/disassembled with ease. If you look at either side of Aibo's ears, you'll see that one side has a fixed arm and the other has an arm that slides backwards. The fixed arm is at the front and also has a little actuator (metal bar with notch) that is the mechanism that flaps Aibo's ears around when he's playing.

So, back to the joints: two pieces, first is removed by sliding the rear arm further to the rear. From there, you can grab the whole circular joint and unhook it from both front lugs. There's a lug in the actual main arm and a lug in the little black actuator arm.

DSC00780

The image above doesn't really help to explain how to undo it. The movement is one-shot and you can see in the photo above that the black actuator is on the left. This means that you're looking at Aibo's right ear and that you'd grab the top silver circle and slide it gently to the right (rear of his head) until both lugs are clear on the left. Once done, you can then slide off the rear shield.

DSC00752

From here, it's a single screw and the microphone + housing is free. Make sure you also unhook the cable!

Replacing Aibo's Inner-Ear

With the microphone unhooked and unscrewed, the silver shell can be lifted off (gently) by applying pressure to the joints that hold it on. With this off, you can really see what condition Aibo's ears are in!

DSC00756

From here, you can slide the microphone out, just enough, to be able to de-solder and solder a new component.

DSC00767 DSC00768 DSC00776

As you can see, I cheated and used the phone the new microphones came in to hold them in-place whilst soldering. I used the datasheet to make sure I got the polarity the correct way around, assuming that red was positive.

With everything wired up, the microphone was pushed back into the housing and re-assembled. Make sure that you have the wires in the correct groove according to the side the ear has been removed from!

Finally, as per above, there is absolutely no need for excessive force on any part of this assembly. I found that, once trying to re-fit the visor, it wouldn't sit flat! Turns out that I'd assembled the rear part of the ear-joint incorrectly and only one side of the guides was actually in the right spot!

DSC00793

If you look above, you can see that the left guide is sitting above the plastic strip that it was meant to slide onto! This meant totally dismantling that ear again to pull that part back and slide it back on again! Painful, but required.

Can Aibo hear me now?

Nope, same as before! Turns out you can just use Clinic Mode to determine if his microphones actually really need replacing! I should've done this first, but I also sorta wanted to play doctor and see what his insides looked like!

17Oct/200

OpenTTD 0.1.4 on TurboLinux 1.1 for Power PC

So, TurboLinux 1.1 is up and running on my Power Computing PowerCenter 180. It took a lot of effort and what is the result? A cobbled-together version of RedHat 2.0 for PPC! Ancient. I should probably stick to tuxracer, but that may even be 'too new'. I want to get OTTD running on this, so I've chosen a really early version that will hopefully mean I don't need to uplift the entire kernel/OS to get running.

Automake and Autoconf

To build OpenTTD, we'll need an appropriate version of SDL. I chose 1.2.1 and, upon trying to build this, found out that it then needs newer versions of Automake and Autoconf. Actually, it requires Autoconf 2.13 and, perfectly, we only had 2.12 from the CD-ROM! One point makes a difference, eh? Linux from scratch has a great tutorial here for autoconf, so I just followed the instructions and installed very easily.

tar -xzvf autoconf-2.13.tar.gz
cd autoconf-2.13
./configure --prefix=/usr
make
make install

automake 1.4-p6 was then built and installed (same process as above, but with a different archive and folder name)... and now SDL would behave.

SDL 1.2.1

SDL was actually very straight-forward, once I knew what I was doing. I actually initially started down a path of upgrading the compiler and libc, but then quickly decided that it was a dependency-can-of-worms and just left everything as 'stock' as possible. So, back to SDL, downloaded 1.2.1 from here, extract it and try to configure it. Actually, you can't, you need to call autogen.sh first...

./autogen.sh

With the above auto* tools installed, autogen will sit quietly for a few minutes and then tell you that you're ready to run configure...

./configure

This completed cleaning, so now we just make...

make

This then took hours... and eventually failed! There was a very obvious error: the installed version of RedHat 2.0 (I mean, TurboLinux 1.1) does not have a linux/joystick.h header file! What to do/guess?

./configure --disable-joystick

It didn't complain, and rebuilt the Makefiles... including those in the src/joystick folder... bad sign? Let's quickly build that and see what happens...

cd src/joystick
make

It compiled fine! Seems that it still needs to create a 'don't make anything' Makefile in there. Also, you could see a new GCC arg of -DDISABLE_JOYSTICK, so my fluke worked perfectly. Anyway, let's go back and re-build.

cd ..
make

The build continued... And finished! What next?

make install

This also succeeded, with a few warning through it, and a bit of doco which zoomed past, not allowing me to scroll back up! Regardless, the following is used when configuring:

which sdl-config
/usr/local/bin/sdl-config

Nice! But actually, it wasn't... I'd later find out that half of the source was still expecting joysticks and that I should've performed a make clean when I re-configure'd! Also, the SDL bits and bobs landed in the /usr/local folder... not optimal on this system, so at the very start, if you're playing at home, use this configure line instead:

./configure --disable-joystick --prefix=/usr

And then OTTD will build! Or so we hope...

OpenTTD 0.1.4

The source was extracted and I started by trying to configure:

# ./configure
error: permission denied
# chmod a+x configure
# ./configure
: bad option

Actually inspecting the configure script just shows it replacing the SDL variables in a JamFile? Uh oh... not a Makefile... we don't have Jam on here! There's also a Makefile, does that work?

# make
...
Makefile:113: window.d: No such file or directory
...

Eh? Started building OTTD and it was quickly apparent that it hated the Makefile. I started creating a new version, and things were working, so I looked at the old one again and realised the line-endings were incorrect! Make sure your Makefile has just \n and not windows endings! Kicking it off again, all was working fine, until it got to minilzo.c/.h.

minilzo.c:249: Invalid token in expression

This file is sprinkled with multi-line \'d source and gcc simply hates it all... so it had to all be collapsed.

#define LZO_CHECK_MPOS_DET(m_pos,m_off,in,ip,max_offset) \
		(m_pos == NULL || (m_off = (lzo_moff_t) (ip - m_pos)) > max_offset)

#define LZO_CHECK_MPOS_NON_DET(m_pos,m_off,in,ip,max_offset) \
	(BOUNDS_CHECKING_OFF_IN_EXPR( \
		(PTR_LT(m_pos,in) || \
		 (m_off = (lzo_moff_t) PTR_DIFF(ip,m_pos)) <= 0 || \
		  m_off > max_offset) ))

All those slashes weren't allowed... so a quick find/replace in Notepad++ of '\\n' to '' worked a treat. lzoconf.h also had a few... but, with these all collapsed...

unix.c:10: sys/statvfs.h: No such file or directory

Indeed, the file didn't exist! But, statfs.h did, so I did a quick rename! And well, it built! And failed when I ran it as english.lng was missing. Usually you'd build the strings, but I stole the file plus the other required GRFs from my standard TTDX Data Archive.. that was always kept near for emergencies such as this!

DSC01038

And it loaded! Slow, chuggy and crashy with lots of frameskip warning shown in the console. Actually, the whole thing would segfault when I tried to move the window on the screen. From here, I'm happy to have achieved this much, but I'm not going to polish it. Instead, it's time to test a newer version of Linux.

Filed under: Apple No Comments
15Oct/200

TurboLinux 1.1 on a PowerCenter 180

I've been meaning to try this for a long time, after getting BeOS to work on the PowerCenter. Actually, I now realise I haven't even posted about that... I promise to do that later. Anyway, I'd recently been scouring the vintage column on eBay and trundled across a beautiful jewel-cased 2-CD version of TurboLinux 1.1 for PowerPC (original site). There was absolutely no one bidding on it, so I took that and a camera for a Raspberry Pi, of which I'll tinker with later.

DSC00927

DSC00930 DSC00936 DSC01036

For those who want a copy of the ISOs, I've dumped them via the instructions here. Of course, if you're inside TurboLinux (Inception?) then you can't use isoinfo as it doesn't exist. Instead, I loaded into Mac OS 9 and loaded up Adaptec Toast to get the data. Actually, I loaded up Toast to make a toast-formatted ISO. But instead, toast just 'stopped' when I asked it to save a disc image. Either way, dd worked with the parameters that Toast provided and I even managed to use a burnt copy to run the final install... how else to test?

CD Images and somesuch...

A note on the images above, they were built with dd on ppc linux (TurboLinux 1.1 at that!) and they failed to burn with PowerISO. Somehow ImgBurn succeeded.

To get this up-and-running, I needed to put my PowerCenter 180 back together. I'd recently scavenged a few parts to get the AV Power Mac 6400 running (oh crap, that's another post that never happened) and so slapped RAM back in this machine and a second spare 50-pin SCSI drive.

Note that there's already some great tutorials online. This LinuxPPC Installation Guide by Jérôme Cornet helped me tremendously.

Preparing the SCSI drive

I could've/should've changed the order of this post... but for those playing at home who just want to get this installed and working, you'll want to set up your drive correctly first! When I was first tinkering, I happened to do it in the reverse order: slap the drive in and start the Linux install... I don't recommend this as the partitioning tool doesn't really like 'weird' disks. I had issues when trying to re-write the partition tables on PC formatted drives, to the point where some would prevent the machine from even booting.

To get started, you'll need a totally separate SCSI HDD from your Macintosh install (if you have one) to get TurboLinux going in a PowerCenter. On my specific machine, the OpenFirmware boot screen stays black, so I actually don't know if there are options there, or if the quik bootloader (installed at the end of the process) actually work. If they do, then you may be able to get away with one HDD, if the bootloader let's you back into Mac OS. Or maybe Boot-X will work, I'll test that at the end of the article.

Anyway, I grabbed a spare Seagate 2.1gb drive and installed it as SCSI ID 0. I then downloaded FWB Hard Disk Toolkit 4.5.2 and formatted it. Finally, the drive was partitioned with one 2gb root partition and one swap partition. I found that there are errors if the root partition is over 2gb, so please make it no larger. Note that you cannot use the LinuxPPC partition type. I tried this first and TurboLinux will just tell you that your drive isn't prepared. Instead, you have to choose custom and then type in Apple_UNIX_SVR2 as the partition type, for your swap partition also! The installer then distinguishes the partition by name, so make sure, as above, you call them root and swap!

Picture 18 Picture 19 Picture 20

Picture 21 Picture 22 Picture 42

Picture 43 Picture 44 Picture 45

Picture 47

Note that I didn't low-level format the drive the first time and managed to muck up the whole drive when attempting my first install. This was because I'd created a 4gb root partition and the system reported that it was out of space!? I then used pdisk in the installer and somehow whacked the drive to the point where it started reporting that it was only 1gb in size. Because of all this, I can only recommend that you simply start fresh with a low-level-formatted clean disk.

Grab your Linux CD

TurboLinux requires a 1.44mb floppy to boot the installer. Make sure you have a clean Macintosh-formatted floppy available. Note that during the install, it managed to fail when copying installer.coff file over to the floppy. I Ok'd out of the error and just copied the file manually. In hindsight, you should eject the floppy now! I then re-ran the installer, skipping the copy-to-floppy, and it turns out the final step afterwards is 'double-clicking' on the Install Linux icon that it's put on the desktop...

Picture 2

Picture 3 Picture 4 Picture 5

Picture 6 Picture 7 Picture 8

Picture 9 Picture 10 Picture 11

Picture 12 Picture 13 Picture 14

Picture 15 Picture 16 Picture 17

So, that Install Linux icon just loads up a preset into the Boot Variables control panel. This was installed by the TurboLinux installer and is just a GUI to manipulate OpenFirmware's settings. The preset it loads is to boot installer.coff file from the floppy drive. Double-click the link on the desktop and then choose Write & Reboot. It'll ask if you're ready to reboot. Eject the floppy now (if you haven't followed the above advice) and hit Yes. As soon as you press the button, slap that floppy disk back in. I took my time to do this the first time and got nothing but a black screen! Turns out my machine was sitting at the OpenFirmware prompt, but I couldn't see it and had no idea what was going on. At this point, as that I hadn't ejected the floppy, it got ejected as part of the reboot process (without me noticing), and OpenFirmware just baulked at a command to boot from a floppy disk when there was nothing in the drive.

What to do? Either reboot again with the disk in the drive, or just slap the disk back in, blindly type boot and hit enter.

Nostalgique RedHat 2.0 (I mean TurboLinux) Installation Process!

If you've made it this far, then you're doing well! My gosh... I remember sitting on the floor of a friend's house (Hi Nathan!) back in maybe 1997 installing RedHat 5.x and running through these screens. Back then the IP configuration confused the crap outta me... doesn't this come with a DHCP client? Anyway, this time around it was entirely painless... just follow the usual prompts...

DSC00943

DSC00945 DSC00946 DSC00949

DSC00950

Next up, partitioning! Make sure to highlight the correct SCSI device in the top list... use the tab key to get up there and select with up/down arrows.

DSC00952

If you skipped the partitioning step above, then you'll need to hit Edit and follow the next block. If you have already partitioned your disk, then hit Done and skip it with gleeeeeee...!

Partitioning with pdisk

Yeah, not fdisk, pdisk! Note that fdisk is also on the distro, but pdisk is a wrapper for PowerPC-style partitioning which knows how to create Apple Partition Maps.

If you've really keen to do it this way, then I'll assume that the installer has listed your drive and you've tabbed over and chosen Edit. From here, you're thrown to a console prompt at the bottom of the screen and you'll need to navigate pdisk carefully. Please make sure to chose the correct partition first, before hitting Edit!

DSC00835

Disregard that it tells you you've chosen one device in the /dev folder and that its actually loaded the same device from the /tmp folder. This is just the way it seems to work and you'll need to find the device in /tmp later if you want to switch to another console and hack behind-the-scenes.

Anyway, pdisk accepts most of the fdisk commands, such as p to list the partition table. If you want to mangle it yourself, then use d # to delete individual partitions or i to completely re-write the partition map and start fresh.

Once you've got space to create your root and swap partitions, you'll want to use the command c to create them. If you're feeling professional, then split everything up into usr/home/root into partitions (this stops one of them from stealing all of the disk space from another and causing system failure). But, if you're lazy like me, then you only need to create a 64mb swap partition and then another partition for root, filling up the rest of the drive.

The basic structure to create a partition is as follows:

c 2p 64m swap

The command above will create a 64mb partition with the name swap at position 2. You can then type p and hit enter to see the new listing. Specifically you can see how much space is left on the disk. I had 1.9g available, so I then created root:

c 3p 1900m root

As opposed to fdisk, you don't need to specify the partition types here. You just need to name them accordingly: swap for swap, root for root. After creating the root partition, I went ahead and checked out the table via the command: p.I was happy with it and wrote the changes to disk via w. Finally, q took me back to the installer and tabbing in a loop back to OK allowed me to proceed to the formatting stage.

Formatting and Package Selection

From here, if you haven't low-level formatted your drive, then I'd recommend bad-block checking on both formatting runs.

DSC00955 DSC00956 DSC00959

DSC00960

You'll then be asked the packages you want to install. Choose what you feel is relevant. You can always mount the CD-ROM at a later stage and individually install RPMS at a later date.

DSC00961

If you've chosen a miriad of groups, then there might be dependencies that need to be installed... please consider and then accept... otherwise your packages will fail to install.

DSC00963 DSC00964 DSC00966

DSC00970

The install will then make the filesystem on the root partition and install the selected packages. If you selected Everything, then expect the following errors during installaion! The packages seem to be corrupt on both the original CD and my copy!

DSC01026 DSC01027 DSC01029

DSC01030

DSC01031 DSC01034 DSC01035

Aww... no Mahjongg!? Note that the packages aren't really important... the machine still worked fine afterwards.

DSC00972

DSC00973 DSC00975 DSC00977

DSC00978 DSC00979 DSC00980

DSC00981 DSC00984 DSC00986

DSC00989

Finally it'll ask a few questions about mice, networking, printers and boot parameters. You really should take a photo of the final window to record the boot-device and boot-file settings required for OpenFirmware!

Once all is done, the machine will reboot, ejecting the floppy. I'd installed TurboLinux around 6 times by the time I'd gotten to this part of writing this article and every-so-often one wouldn't boot at this point... the machine would restart, chime and hang at a black screen. I had to use the magic 4-finger-salute: Option+Command+P+R to get back to Mac OS and then re-enter the boot params from the final step of the installation process back into the Boot Variables control panel and Write & Reboot. It would then boot without fail!

TurboLinux is starting for the first time...

Shit, it booted! But I got a lot of crappy errors in the boot log.. which zoomed past and landed me at the boot prompt.

DSC00993

I logged in as root (as the installer didn't let me create any other users) and checked dmesg...

DSC00886

Not good.. seems that anything network-related just crashed?

DSC00995

Let's check X-Windows: startx got me to a very mustard-flavoured OpenStep desktop, but the Netscape icon from the launcher did nothing... I then tried netscape from xterm and got a segfault! Why is all network-related code throwing exceptions? Oh wait, I have two PCI cards installed in this system doing nothing. One is a 'bootable' Sonnet IDE card and another is a Kingston KNE100TX LAN card. Maybe TurboLinux can't work out if it should be using the onboard LAN or PCI LAN? Let's remove both cards...

DSC00888

A clean boot! I can even ping!

DSC00889

Netscape then even wanted to load... but got sad when it couldn't phone home. Poor thing... a few decades too late!

Screen Resolution

TurboLinux will use the resolution that you had Mac OS configured to. That value is store as a mode-number in PRAM and, unless you've reset it recently, should therefore display how you expect. If you want to override this, then choose a value from the list below...

#    1   512 x  386  60Hz (interlaced, NTSC)
#    2   512 x  386  60Hz
#    3   640 x  480  50Hz (interlaced, PAL)
#    4   640 x  480  60Hz (interlaced, NTSC)
#    5   640 x  480  60Hz
#    6   640 x  480  67Hz
#    7   640 x  870  75Hz (portrait)
#    8   768 x  576  50Hz (interlaced, PAL)
#    9   800 x  600  56Hz
#   10   800 x  600  60Hz
#   11   800 x  600  72Hz
#   12   800 x  600  75Hz
#   13   832 x  624  75Hz
#   14  1024 x  768  60Hz
#   15  1024 x  768  72Hz
#   16  1024 x  768  75Hz
#   17  1024 x  768  75Hz
#   18  1152 x  870  75Hz
#   19  1280 x  960  75Hz
#   20  1280 x 1024  75Hz

And replace the value '20' in the command below...

startx -- -mode 20

You'll then get the resolution you desire... as long as you have a monitor that supports what get's output. And maybe as long as you have the VRAM? This unit is decked out, so mode 20 worked fine. You can also pass -DEPTH with the value 8, 16 or 24.

Mounting HFS Extended Partitions

No-can-do out of the box! hfsutils can't mound HFS Extended partitions. Instead you'll just get the HFS shim with the Where_have_all_my_files_gone? file explaining that your data is still on the drive, but your current software is perfectly rubbish. I haven't found a solution to this yet... it seems that hfsprogs is open-source from Apple, but this OS may be way too old to compile it.

Getting back into Mac OS

There's a Linux tool called nvsetenv that will allow you to set the OpenFirmware boot-device setting inside Linux so that you can get back to MacOS on the next reboot:

nvsetenv boot-device "/AAPL,ROM"

Using BootX?

BootX (download it here) got installed whilst I was mucking around with Linux 1999 (mentioned below, and I'll write up a HOWTO on that also) during failed installs of TurboLinux. Just like BeOS, it throws a system extension in Mac OS with a symbol as the first character of its name to make it get loaded first. It then pops up a cute boot dialog to let you choose Mac OS or Linux with a configurable default. This is much nicer than the OpenFirmware prompt as it actually displays!

Unfortunately, there's an issue when you want to try and use it for TurboLinux. We'd need a vmlinux bootstrap kernel available for it to boot that matches the 2.1.x kernel in TurboLinux 1.1, otherwise there'll be a version mismatch. I tried all vmlinux files I could find on the CD; I even copied the exact file from the root partition... but BootX would just display a black screen each time I tried to boot it! Just for fun, I then used the 'Standard LinuxPPC' kernel with /dev/sda4 as the root and the bloody thing booted! But there was no sound and I had no idea what other damage might occur with a mismatched body vs. head.

So this is a really old version of Linux....

I went a'googlin and tried to find something newer, but there doesn't seem to be one! That site also doesn't have these ISOs, so I'll contribute those in due course. PowerISO on Win10 just threw a CRC error reading them? I might try Toast on the actual Mac. And then? Let's try LinuxPPC 1999 or LinuxPPC 2000.

But does it run OpenTTD?

There's no un-emulated version of A-Train to get running on here, so let's aim for OpenTTD. I've actually made this topic a new post as I nearly tripled the draft of this one with my moaning as to how hard it is to find a correct collection of libraries to build anything!

Filed under: Apple No Comments