Whilst searching for a CRT on eBay for the Quadra (that's another story), I came across this item. It was listed as being PC Compatible and, after my last efforts of trying to get a DOS Card to work, I decided to tackle this one.
The Power Mac 7200 was marketed as a PC Compatible because it came with a PCI card containing all the required hardware to run a PC. This card includes a 100 MHz Pentium processor that can have a maximum of 64 MB of RAM dedicated to the DOS/Windows operating system.
Powering it on
The case contents rattled a little, so I opened up (there are two push-buttons on the front under the lip) and inspected it. A few plastic lugs had snapped loose, but there was nothing conductive. With the case open I jammed in a power cable and hit the power button.
Nothing. Not even a zap, whirrr or beep. Just silence. I hate that...
Basic principles told me to disconnect all unnecessary components and try again. No love... Pulled the CMOS Battery, held the CUDA button (but not for 15s), left power off 10minutes... no go.
Testing the power supply (Delta DPS-150GB A) (Apple 614-0039)
From here I thought I'd tackle the power supply first. I didn't want to believe it was the logic board. I disconnected the cables and removed it from the case.
There are 4 screws holding the lid of the power supply on. After removing these, you'll then have to slide the lid along the main trunk of power cables. Pushing the cables into the supply will make this easier. The fan has a 2-wire cable which easily pops off the main power supply circuit board.
Once open, I first inspected all components for damage... all looked good. Testing the fuse showed that it worked fine... conducting power. I then grabbed the multimeter and tested all of the pins. I found 5v on pin 4, but no voltage anywhere else.
Here's the pinout for the main 22-pin connector, looking at the plug as if it was facing away from you. Pin 1 is top-left, pin 22 bottom-right.
And then the secondary 10-pin connector. Pin 1 is top-left, pin 10 bottom-right.
These power supplies are triggered by the power switch on the motherboard. Plugging them into the wall will get them in to 'stand-by' mode and power should be visible on certain pins. To test this, plug the power supply into the wall and check the following:
- (22-pin connector) +5v is visible on pin 9 (Yellow)
One important point is that, in my case, the 5v above showed up on the correct pin. The power supply still would not power up. It turns out that the above test is not fool-proof; it'll simply tell you if the initial 'trickle' power is available.
To get this thing to power on whilst disconnected from the motherboard, follow these steps (Thanks goes to LT.Maddog420 on the Tech Guy forums):
- On the 10-pin secondary cable, connect pin 5 (White) to any of pins 1-4 (Black)
- Still on the 10-pin secondary cable, connect pin 10 (Brown) to any of pins 6-9 (Orange)
- Confirm the power supply is plugged in to the wall and that the pins connected above are not exposed or touching metallic surfaces.
- Now, on the main 22-pin power plug, connect pin 12 (Yellow) to pin 21 (Purple)
The above should jump-start the power supply. The fan should at least fire up. If you get nothing then you've got a dead power supply. This would be the first item to replace in a Macintosh that doesn't power on. Of course, when the supply died it could've also fried other parts... but replace the power supply first as it's cheaper. I tried to jump-start mine and it didn't work at all. I decided to pull it completely apart for thorough inspection.
Cracked Circuit Board
Once out of the casing, the issue became quite obvious. The base circuit board for the power supply had a crack in it. The crack formed a semi-circle around the area where the circuit board is held by notches in the metal case. It seems that, somehow, the board has received lateral pressure and cracked! It doesn't quite make sense as the board is thoroughly enclosed. I can only imagine that weather/heat has caused this. I have a hunch that this machine had been out in the elements for a while.
There also seemed to be new flux and solder at the base of a 3-pin component. I really wouldn't be surprised if this had been repaired in its past life; this machine is nearly 20 years old.
Repairing the crack was pretty straight-forward. I was really lucky that this was a single-sided circuit board with large tracks. If there had been tracks on the top side, then this would've been a lot more difficult.
I bared the copper on the tracks around the solder joints and messily bridged all of the component pins. I made sure that I followed the tracks and didn't bridge any circuits. My butane-powered soldering iron decided to let its tip melt in the process and so the first fix shown below looks really crappy. I bought a proper soldering station (I needed it to work on the DOS Card for the Quadra 950) and re-did the soldering. Hence the two pictures of the finished job below.
And then... the friggen thing spun up! Using the jump-start instructions above, I bridged the two wires and then joined yellow to purple. It felt like I was hot-wiring a car and I, honestly, had very little faith in my hack working. I had a celebratory beer as the fan kicked off and I then crossed my fingers that the logic board wasn't also damaged.
A final note: be careful when pulling/pushing the bunch of wires in and out of the power supply case. You can easily peel the insulation off the individual wires and the last thing you would want is a short!
I remember back in high school that we had DOS Cards in the Macintoshes we used for Multimedia class. We were either programming Hypercard Stacks or switching to the DOS environment and fragging eachother in Doom II. We weren't meant to be doing the latter... but it was hard to resist.
I had always been impressed that the DOS side worked just as well as the Mac side and switching was seamless. It all makes sense now why the DOS side kept running when switching and why it all ran so well; the DOS card created a whole PC running independently of the host Macintosh.
To re-live all this, I wanted to find a DOS Card for the Quadra 950. Researching the cards lead me to believe that the majority would fit into the the PDS Slot, but I wanted to keep my PPC upgrade in there. I therefore began the hunt to find a Nubus DOS Card.
Some light reading...
- Jag's House: Installing a DOS Card Into 68k Macs (Not Supported by Apple)
- Tom and Lisa's Weird Web Page: DOS Card Madness !
- Vintage Mac World: 20 Ways to Misuse an Orange386 NuBus PC Card
- Andrew's OrangePC 290 page (Absolute Goldmine!)
- Low End Mac: The Once and Future Mac286 Page
- A Brief Overview on DOS Compatibility
- PC Card FAQ
First attempt at acquiring one
I happened across an Orange Micro PC Coprocessor Card (dated prior to the OrangePC 290) with a Cyrix 5x86 on eBay. Bidding started at USD50. I bid up to USD70. I was in the lead until the last second when the price nearly doubled to USD126. Sounds like I'm an eBay newbie but, on the contrary, I just wasn't expecting the price to go that high. I actually wonder what the final bidder put down as a max bid... only the bidder ever knows with eBay, the seller only ever gets to see the final auction price and any bids below that.
This kind of crappy bidding brings up a good point: I like how Yahoo Auctions Japan actually extends the auction in the last five minutes, for five minutes, if someone places a bid. That way, just like in a real auction, the final bidder with the most money actually wins; rather than the one with the lowest latency.
The conclusion? These things are in demand!... This model happened to be a Cyrix 5x86 SL50 and was a little below-spec anyway, so I was happy to sit tight for something gutsier.
Orange Micro: OrangePC 290
eBay alerts are all well-and-good when the sellers list their items correctly. Unfortunately, this item was listed as shipping to the US only. I usually don't bother begging, as you usually get a flat-out "no" in response, but I asked the seller if they'd ship to Australia. As luck would have it, they did... but it was through the global shipping program. Not to be discouraged, I took the gamble and bid anyway... I won!
It seems that this card was worth over USD$2500 back in the day. See The Original Macintosh DOS Compatibility Card (Houdini I) for a price list... way down the document. I haven't checked the rest of the doc for valid information on my scenario (I don't have a Houdini card), but I'll read it at a later date when I have Win95B+Plus! running on my Quadra.
This card is came equipped with a genuine Intel 486 DX4-100 CPU and 32mb of RAM. I scoured the internet and found the drivers on the Wayback Machine. Product information is here and Downloads and drivers for the OrangePC 290 are here. Installation seemed overly-easy. Running the application gave a very simple configuration interface. Thanks to all my partitions I could easily allocate the space on one to a virtual HDD file. It seems that you need to use real floppy disks instead of images... Use Disk Copy to create those via the "Make Floppy Disk..." menu item.
The first warning, as below, was that my Video mode was unsupported. As you can see, it was configured for internal video, but the desktop mode didn't seem to gel with the OrangePC card. I tried quite a few resolutions (not really trusting my MAC to VGA video converter) but couldn't get it to agree with any mode. I was beginning to wonder if this was actually a hardware issue with the card itself.
I then hit Cold Boot on the setup panel and ... nothing ... 10 seconds later an error: The OrangePC card is not responding to the Macintosh and the error code 32. I couldn't find anything on that error number, but googling the text gave the standard advice of (taken from Orange Micro's FAQ page):
Q: When I launch OrangePC, I get an Error message saying ``The OrangePC is not Responding."
Remove the OrangePC from the Macintosh. With a pencil eraser, clean the PCI contacts. Do the same for the Memory (DIMM or SIMM) modules. Reseat the memory modules on the OrangePC, and insert the OrangePC into the Macintosh. If possible, place the OrangePC card in the slot closest to the Macintosh processor.
I decided to go down the cleaning route and removed the RAM SIMM. Everything then started to become very clear... the teeth in the socket were loose. I don't even know if that's the right term, but either way the three left-most contacts were going to be making very dodgy connections... no good for low-level digital logic. I jumped straight on eBay and found a local 72-pin SIMM socket and ordered it... it's 90-degrees instead of the 22.5 angle, but it'll be a good test.
In the meantime, I removed the SIMM, put the card back in the Macintosh and tried again... this time OrangePC told me that the Memory configuration was incorrect. Slightly interesting... it can tell that the chip isn't there (there must be a latch driven when the chip is in, must be on other pins.) I unseated the CPU and checked for further damage, but it looked ok... I then inspected the rest of the board. There are dints and scratches all over it, but none look track-threatening. I reseated the SIMM as best as possible with its loose teeth and tried again.
Finally, prior to any actual surgery, I grabbed a hair-drier and gave it a once-over. The age-old trick of reheating dry solder joints is a good one. I've never tried it, but I could see dry joints all over the place. A hot hair-drier will actually slightly melt the joints and, as long as you don't angle the board, hopefully re-join any damaged connections. It's a crap-shoot, but it was worth a try. Unfortunately it didn't improve the situation.
Googling further, I came across Andrew's OrangePC 290 page. This guy is a legend; That is all. The site might as well be the technical manual for the card. So lucky to find it. It documents the jumper settings... I assume these would come set out of the factory, but they are there to be configured. It turns out that he has all the information I need for the CPU I have installed. I reviewed the jumpers, and found that they were all wrong. They didn't match the CPU installed at all. I reconfigured the jumpers as per Andrew's page... but the board still would not function.
Re-inserting it and starting OrangePC threw an error Type 1 at me... hadn't seen that before. Oh, the joys of playing with vintage hardware! Type 1 errors are address errors... I assume it's having issues finding the hardware. A reboot didn't help. I powered the machine down and was about to put the card in another slot when I realised I'd bent a pin on the Nubus connector. No wonder the software couldn't find the hardware.
Don't do anything with vintage hardware in a rush... Straightening the bent nubus connector pin proved relatively easy. I inserted it again, gently, and power up the machine. No love... errors... I think we'll see if the RAM socket repair will work.
One note, I attempted to set the video mode to external via jumpers 11 and 12. Andrew's site indicates that there are two configurations, but I tried all. The software actually registered that external mode was selected... it even stopped me from opening the internal view of the dos environment. That only confused me further... the Macintosh could talk to the card fine... it just seems that when it throws the final boot command that the card does not respond... maybe it is the RAM/CPU combo. I really don't know what the history of this card is... for all I know it's been out in someone's flowerpot catching rays for the last 20 years.
Further attempts to get this working resulted in very hot CPUs and other ICs on the board, random bus errors on boot of MacOS and system crashes left, right and center. Not much fun... this card is about to get written off as a dud. I tried reverting to 8.1, switching off the PPC card, switching back to the stock crystal. Nothing. It just wouldn't boot.
I had a lightbulb moment: I could re-wire the first loose tooth on the ram socket prior to receiving a whole new socket. I found some winding wire from my toolbox and installed it. Nothing... it still failed with the same errors... made me believe that the card was hopeless.
...this effort proved fruitless. No change in error messages.
In the never-ending quest to fix this thing, I also replaced the CPU with a valid substitute. I bought an AMD DX4-100 from a seller on eBay and gave it a go... no love.
The RAM socket arrived... I replaced the socket, but that didn't work either.
Could it be the RAM SIMM? I've another arriving sometime in the next week... will give it a go.
Otherwise... I'm beginning to think that this is a dead-loss. Time to sit back and wait for another one to appear on eBay.
I've always thought a smartwatch would be fun, but I've never really been keen on any of the models available. This stood true until I found out about the Pebble. The previous models were butt-ugly, but the kickstarter project for the Pebble Time took my fancy.
I backed the project and received my Pebble Time last Thursday. The contents of the package were very simple: A manual/quickstart, a charging cable and the watch itself. The watch came pre-charged and I was ready to plug it in.
I enabled bluetooth on my phone and loaded up the Pebble App. It found the watch and then tried to update it's firmware. This managed to fail 3 times in a row... I held down a number of buttons on the watch but could not get it to reboot as per their recommendation. On the fourth attempt, the firmware updated.
I could now view the installed watchfaces and apps on my watch. Watchfaces are apps, but they get maximum screentime as they're the default app shown, displaying the time. Extra Apps can then be installed to do any number of tasks. The watch is effectively always connected to the world, as long as your phone is... and as long as you have battery... everywhere.
The battery life is intense. It lasts around 5 days without charging. It's warned me today that it's at 20%, but I thought I'd keep going to see how long it lasts. Last charge was Thursday evening. Better to deep-cycle the batteries, I suppose.
Off the shelf there is a remote to control music, an app to configure alarms (not tied in to any Android app), watchface selection and settings. The Music remote works great, although it tied in to 'Apollo' instead of Google Music... I have no music in Apollo.. will need to sort that out.
There's a whole plethora of watchfaces to install. Anything you can think of. I tried WeatherLand and IsoTime, two great designs. The former takes into account your location and the local weather and renders the background mountain scene accordingly! There's also the shadow clock, which is installed by default.
I haven't installed any third-party Apps on the watch yet... I'll do that and report back here... but I have gone ahead and created my own custom Watchface!
Cloudpebble and Developing
You can choose to develop an App or a Watchface. These are really the same thing, but a watchface will be categorised correctly and perform the correct actions on button-press events.
Mimicking My Old Arnette Watch
Here it is... it was a clunker and it contributed to a broken wrist. (Don't wear watches whilst playing sport!) This is the last remaining photo I have of this model and it is near-on impossible to find any reference to it on the internets.
As you can see, my watch bit the dust after a decade of punishment. I had loved the 'text mode' so much that I decided to emulate it on the Pebble Time. I used FontStruct to create a 30px high font that resembled the Arnette font. This then worked perfectly as a resource in cloudpebble and rendered pixel-for-pixel on the watch itself.
I then just had to write the logic to write out the text of the time. This was a little tricky, but nothing that couldn't be solved by a few arbitrary values and if clauses. The result speaks for itself! There was the odd bug or two to start with... but I've been testing the watchface out in the field and it's working great. I think I might add a battery meter on there and a few other doo-dads if possible. I'll then release it to the greater community.
Note that the old Arnette actually had a 'magic-a-ball' if you held down the top-right button. I hadn't known about this feature... 4 years in to owning the watch I accidently held down the button whilst trying to set the time and the friggen a-ball came up. It read back to me "YEAH SURE". Nice fortune! After that it became a great decision-maker whilst intoxicated. I might also program this into the watchface... will need to work out if I can commandeer the buttons whilst in 'watchface-mode'.
In the last shot you can see that I realised I'd had the colours the wrong way around... flipping them gave me goose-bumps... although the screen is 4x the DPI of the original watch, the result is so similar it's not funny. I love it!
Got any other ideas/development requests?
Feel free to leave a comment here and request something custom for this watch? Am happy to work with anyone who wants to design/develop something for this watch. It's a great platform and the only limit would be one's imagination!
More from the photo album I'd neglected... This time it's Osaka and it's 3 years since I'd last visited.
Staying at the same apartment as usual (Thanks Masa-san!) I had the same great view of the trunk from Shinosaka Station to Osaka Station north of the Yodogawa.
With my freight timetable in hand, it was easy to be there at the right time to see the transfers through to Umeda Freight Yard or Ajikawaguchi.
Later that night I ventured to Shinosaka Station itself and checked out the expresses on platforms 11 and 12.
Hankai Tram Network - Ebisucho
The Hankai Tramway runs from the southern end of Den Den Town into the southern suburbs of Osaka. It has a cute selection of very well looked-after aging rolling stock.
The two photos at the end are from the steps on the northern side of Spa World as you head into Shinsekai. It's a display of one of the old Hankai Trams and has mentionings on the history. I couldn't read it ....
Noda Station - Tetsudou Library
I waited here one night for the Super Rail Cargo M250. It didn't come... The Railway Library is still there though! Very impressive... something that wouldn't commercially survive in any other country, I'd imagine... the photos below are the most recent from May 2013 and then photo I took in 2010. Not much of a difference, just different paper posters in the left windows.
A Haruka also bolted past on its way to Kyoto...
Digging through my backed up iPhoto album, I'd realised that I'd completely failed to upload and blog about my 2013 trip to Japan. I'll be collating (and trying to remember) the photos and trips and hopefully write about them in due course.
This post is about a trip I took from Tennoji to Kansai Airport. Usually you'd just jump on the Nankai Rapi:t or JR West Haruka, but I had time to burn and new places to visit.
Why not take the express?
Scenery from a train window in Japan is, more often than not, impressive. It's not as educational as a TV, but the quality is realistic and the views picturesque. The audio quality is also fantastic and there's often a connection to the soul when one of the clicks or clacks actually physically interacts with you.
Realising this, I had decided to extend what would be a very short and fast trip into a long and thoroughly enjoyable one through the south Osaka countryside.
Kansai Main Line
From Tennoji, I watched the expresses depart southbound towards the airport and realised that 3 or 4 of them would reach my destination before me. I was in for a much longer trip, starting off heading east, instead of south, towards Oji.
This is the Kansai Main Line (the translation could also be "Kansai Original Line") which cuts across the Kii Peninsula from Tennoji through to Tsu. I travelled on the west side of it from Tennoji through to Oji, which uses an assortment of EMUs. Further to the east you switch to a DMU to get over the mountain range to Tsu.
Note that Google Maps correctly shows the name from Kamo to Namba as the Kansai Main Line. JR West has given the stretch from Namba to Kamo the nickname "Yamatoji Line" and runs the "Yamatoji Rapid" on it.
This line runs from Oji to Wakayama. From Gojo Station, the track parallels the Kino River (Kinokawa River? Kino River River?) giving the passenger some fantastic views. I was there in early Summer and there were carp kites hanging from cables strung across the breadth of the river. For the life of me I can't believe that I didn't take any photos.
This is the stretch of track from Tennoji to Wakayama. Multiple express trains run along here... The Haruka to the airport and the Kuroshio/Ocean Arrow to Shingu. I checked out Wakayama station, a junction for the Kisei Line and the Wakayama Railway Kishigawa Line.
This is the first station north of Wakayama on the Hanwa Line. The expresses don't stop... and there's a sweeping curve and bridge to the south, providing a great spot to get them coming through at full-tilt.
You then get great shots from the north with the mountain range in the background.
Heading north, the track enters a mountain range just after Kii Station. In the middle of that range is Yamanakadani Town. This little town has a tiny station where the expresses bolt through.
Further north, after the mountain range, the track makes it way towards the branch to Kansai Airport at Hineno. Two stations before this is Shinge Station. It's extremely urban and sees very much the same traffic. No express trains stop here.
The branch to Kansai Airport starts here. The Haruka Express trains therefore stop here to allow connecting passengers to continue south to Wakayama.
From here it was a quick transfer and trip through Rinku Town before arriving at Kansai International Airport.
That beast of an engine from Canberra was on the move again, this time southbound. It was the June Queen's Birthday long weekend and they were running a 'Winter Safari' tour to Junee and Wagga Wagga.
I wanted to check it out, but didn't feel like covering the 100s of kilometres there and back driving; so I chose to take the trusty XPT once again. The Friday night service would get me to Junee just before 0100 hours. This was ok as I'd arranged with the motel across from the station to stash my room key somewhere accessible. All went well and I slept for the arrival of the train the next morning.
The overland arrived just before our train departed. It was busy shunting the auto-rail off the rear and over to it's dock to put the cars back onto the road. The trip into the night was peaceful enough, although it seemed that getting drunk and walking up and down the corridors all night was to be a good hobby for some locals.
I'd inspected the ARTC timetables and put together the following diagram. There wasn't too much freight in the area, but there was enough to keep one's self entertained. I had initially thought that the steam engine shuttles were from Wagga to Junee and back, but it turned out that (once I actually read the website correctly) that the shuttles were just between Wagga and Bomen. It seems that quite a few others, who came looking for the engine on the platform at Junee during the day, made the same mistake.
Coota Junee Bomen Wagga ST22 CLK 0137 0048 0033 0022 6MB4 PN 0329 0221 0158 0150 6MB7 QN 0539 0405 0340 0332 5BM7 PN 0354 0441 0522 0528 9L03 ARHS 0449 0543 ---- ---- 3PW4 PN 0903 0757 0727 0719 9S05 ARHS ---- 0805 0830 0840 9L06 ARHS ---- ---- 0915 0855 9S07 ARHS ---- ---- 0920 0940 9337N PN 0852 0944 ---- ---- 9L08 ARHS ---- ---- 1015 0955 6WP2 PN 0900 0952 1021 1028 9S09 ARHS ---- ---- 1030 1050 9L10 ARHS ---- ---- 1125 1105 9S11 ARHS ---- ---- 1130 1150 3314N QUBE ---- 1159 ---- ---- 9L12 ARHS ---- ---- 1225 1205 9S13 ARHS ---- ---- 1230 1250 SP41 CLK 1219 1258 ---- ---- 3315N QUBE ---- 1300 ---- ---- ST23 CLK 1251 1327 1346 1354
I'd bought my return ticket from Junee and had considered trying to change it to depart from Wagga instead. Unfortunately there weren't too may transportation options to get to Wagga, so I stayed put in Junee to watch the festivities. In hindsight, I could have actually purchased a ticket on 6029 and travelled south to Wagga in the morning when they left... but meh, I'd no idea.
6029 arrives with assistance
4501 and 4403 lead 6029 into Junee around an hour late. Still under the cover of darkness, the consist made its way into the yard and then detached. All three engines came off the consist to allow 6029 to shunt off and proceed up to the roundhouse. As with most typical gunzels, there were ramblings of mechanical failure and other doom/gloom. I would've assumed that 6029 would've lead into Junee, but then again... it was pitch black and there was no need for spectacle. They would've also needed to keep up with traffic, so having the diesels do all the work makes sense.
The engine stayed in the roundhouse for quite a while... missing the initial slot it was meant to take from Junee to Wagga.
A northbound freight was then given the path and 6029 covered it in steam/smoke as it came through.
Once the path was clear, the consist was shunted into the station and passengers boarded.
It then proceeded off to Wagga, looking great, but requiring quite a bit of help from 4501 on the tail as it climbed the grade out of Junee.
That was it for 6029... the next site was from the window of our southboard daylight XPT. One of its shuttles was to Uranquinty and it was in the loop there as we bolted through.
Freight around Junee
There's always containers stored in the yard... Qube shunt here from Harefield. It seems that they can't fit their entire consists into the roads at Harefield, so they shunt rakes of container trains back and forth to load and unload. They then bring the portions together in Junee yard and take them south to Melbourne.
Junee is also the location of the triangle to Griffith. I lie though, it's no longer a triangle. The branch is only accessible when heading north from the south, so any southbound train wanting to go to Griffith has to head into Junee Yard, run around and then proceed back out again. A grain train did this whilst I was waiting at the station.
A random Aurizon track vehicle then appeared at the crossing, mounted the tracks and then bolted off north.
Finally the Qube service from Harefield arrived to drop off one rake of containers and take another off to load/unload.
Railmotor Societies 721/621
The radar then showed that an unusual vehicle was headed south. Speaking to folks on the platform, it turns out that the Patterson Railmotor Society was running a tour over the long weekend also.
Only one platform is in use at Junee. Whether it be for lack of accessibility, patronage or care, the second platform that would cater to northbound passengers is out of use. This means that, on approach, the northbound XPT needs to cross over to the southbound tracks to reach platform 1. Of course, it can only do this is the road is clear. Funnily enough, the road isn't often clear as the southbound XPT usually crossed the northbound here. It's the half-way point between Melbourne and Sydney.
Due to the track arrangement, the northbound XPT is, more often than not, sent north past the station into the siding north of the level crossing. The southbound XPT then comes through, visits platform 1 and then proceeds to Melbourne. Once clear, the northbound XPT then reverses (well, it's got a cab at either end, so it's not too much hassle) onto the southbound road and accesses the platform. Once loaded it then continues north on its journey.
Quite a lot of mucking around when they could just reinstate the other platform. It's the age-old issue with Australian trains and 'customer' service. They've slapped it in the too-hard basket and it's frustrating to watch the infrastructure crumble.