welp, how'd i get into THIS situation? let's rewind...
*earlier* what i have here is a Sun SPARCstation 1+.
it's going to need a little work but WHAT is that blob of duct tape
looks like a coin cell mod.
on the back, we have the usual semi-cursed 13W3 video connector and the Sun keyboard connector. where am i going to find a Sun keyboard?
i just happen to have one, new in box! i bought this years ago at Weird Stuff Warehouse when they were still around. i have no idea why, but i'm glad i did.
i've also got some Sun mice. an M3 and an M4.
however, they have RJ11 connectors and the keyboard (which is where the mouse plugs in) just has a mini-DIN connector. uh oh.
which brings me back to here. does this mouse, despite the connector difference, use the same protocol?
looks like it is essentially the same protocol as the version of the mouse (type 4?) designed for the SPARCstation. the output is open collector, inverted async serial, 5 byte.
time to build an adapter. the connector is RJ11 (technically 6P4C) but it has these pins sticking out, presumably so you can't plug it into a phone jack.
ahh well, i'll just file some grooves.
adapter!
couldn't find a Sun 13W3 cable adapter so I'm doing this to get to VGA.
well it found the keyboard!
four months later  i made the Video Snake Oil board that can adapt 13W3 (any type!) to VGA. you just wire up the little pads to whatever your machine needs.
i've also installed a ZuluSCSI. this neat little board is a lot cheaper than a SCSI2SD. i'm going to try and install Solaris using a CDROM ISO file. CD6_512.iso is placed on the SD card. it'll be ID 6, 512 bytes per sector.
well, it tries to boot from the CDROM but suffers a BAD TRAP. not sure why, maybe i need to update the IDPROM contents.
yeah i am guessing the machine type in the IDPROM is invalid so the installer runs the wrong code.
wrote a little FORTH program to update the contents of the IDPROM, and it looks like it has a valid host id now.
forgot to add that i needed to do a "set-defaults" and a "setenv diag-switch? false"
uh oh, RAM parity error. i'm hoping U676 isn't seated all the way and that it is an easy fix.
that did the trick. the SIMM sockets were very stuck. welcome to S O L A R I S!
spoke too soon. another parity error, this time at U677. why there? because that's where i moved the module that was at U676. think i will just pull that bank of RAM for now.

it seems to run with 12MB RAM. no more parity errors this time. but now the installer hates my SCSI drive (a ZuluSCSI).

filesystem creation failed for / 🤔

i bet it is this issue. basically the ZuluSCSI returns values for disk geometry that somehow confuses the Solaris partition tool. one solution is to use a real SCSI hard drive and then dd it over to the ZuluSCSI once the install is completed.

https://github.com/ZuluSCSI/ZuluSCSI-firmware/discussions/122#discussioncomment-4418076

Has anyone used ZuluSCSI on a SPARCStation? · ZuluSCSI/ZuluSCSI-firmware · Discussion #122

Hiya, I've got my ZuluSCSI installed in a sparcstation 2 and while it's definitely working...something is amiss. I can boot from CD image and Solaris 2.7 sees the hard drive image but I've having s...

GitHub

zululog.txt has the smoking gun:

[996859ms] WARNING: Host used command 0x1A which is affected by drive geometry. Current settings are 63 sectors x 255 heads = 16065 but image size of 2097152 sectors is not divisible. This can cause error messages in diagnostics tools.

i think the solution here is to resize the disk image file so it is divisible by 63*255*512.

that wasn't the solution lol  there's no more zululog.txt error but the superblock isn't getting written correctly. 6D B6 DB 6D is the test pattern written by the format command. could be somehow corrupting it during the write?
well, I broke down and put in a spinning rust disk. the installer is much happier now and is copying files.
spinning rust refuses to boot when the SCSI ID is set to 0. I can set it to 1 and it will boot partway but the fstab is configured for 0 so it won't work.
I imaged the drive using the ZuluSCSI initiator mode, but even with the ZuluSCSI the firmware refuses to boot from SCSI ID0. weird.
yay it works now! i tried SCSI ID 1.
so i tried placing a drive image at SCSI ID 3 and *it boots as SD(0,0,0)vmunix* wtaf lol. seems like Sun cheated and swizzled some SCSI IDs around.
anyway. trying an older Solaris installer and it is really surprised at the date -- could it really be 10,405 days after 1995?
omfg they swizzled it 🤦‍♂️

SunOS 4.1.4 says it can't possibly be the year 2023: "WARNING: preposterous time in filesystem -- CHECK AND RESET THE DATE!"

sorry SunOS, there's nothing i can do to fix 2023.

@tubetime I booted a NeXTstation in Sep 2022 and just had to check whether I tweeted this preposterous message or tooted it. Didn't know SunOS does it too!
Thank you for the swizzle table, I'm sure I'll lose it but it's useful to me anyway.

@zarbet @tubetime AFAICT the preposterous time message has been there since 4BSD (see clkinit at https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/sys/sys/machdep.c) and given both NeXTSTEP and SunOS are BSD-based it is understandable that they would carry the message...

Btw the message still survives even in modern descendants (e.g NetBSD has it here: https://github.com/NetBSD/src/blob/trunk/sys/kern/kern_todr.c#L197

@koakuma @tubetime
so nifty!
and (is there a "quote code block" here?)

/* The minimum reasonable RTC date before preposterousness */
#define PREPOSTEROUS_YEARS (2021 - POSIX_BASE_YEAR)

@zarbet
> is there a "quote code block" here?

I don't think mastodon dot social has it, but there are instances running other fedi softwares (or modified Mastodon) that have it

@tubetime we live in preposterous times
I, Ludicrous - Preposterous Tales - Ken McKenzie (Original Flexi Release (1987)

YouTube
@tubetime I agree with the sun engineers. Why is something with a 20MHz CPU and 1gb of spinning rust (probs not the original, much more likely to be 500MB) even powered on in 2023?
@spmatich @tubetime props to the Sun engineers tho for building hardware that lasts 30 years.
@spmatich @tubetime 4/60 cpu was the original sparcstaton 1. That had a 100mb drive with the infamous sticky head.

@spmatich @tubetime

Let me introduce you to the "Commodore Amiga" in Grand Rapids school system. 2015 Article.

I saw a location that took out original IBM PC's - in the '00s. Yes, still operating and finally being moved out as software finally updated.

https://www.woodtv.com/news/grand-rapids/1980s-computer-controls-grps-heat-and-ac/

1980s computer controls GRPS heat and AC

A 30-year-old computer that has run day and night for decades is what controls the heat and air conditioning at 19 GRPS buildings.

WOODTV.com
@JohnJBurnsIII @tubetime value for money. I love this “they go back to the original programmer who still lives in the area.” It’s probably saved them millions over the years.
@tubetime The best bit about this message is that I guarantee you there are still Sun4s in production somewhere. Preposterous!

@nickzoic @tubetime We ran ours a lot longer than sanity should have allowed.

Our last “production” Solaris box was retired in 2021.

"Production" is in quotes because it was used by ONE professor, who didn't want to let go. We finally convinced him he should migrate his stuff to Linux because we literally have no way to fix this machine if it dies and it'll be a lot easier while it's still running.

Thankfully he obliged.

I did a little obituary on the Other Site when it was shut: https://twitter.com/zorinlynx/status/1395094163029381122

Zorin =^o.o^= on Twitter

“This was the last active Sun Sparc machine in our department. We finally shut it down today. Requisquat in pace, Ultra 10. May you find glory in the afterlife.”

Twitter

@nickzoic @tubetime there's probably a sun4c like this one doing something critical and hasn't been restarted since 1995.

When it fails, we'll know it. ;o)

@tubetime yours was the best account on Twitter, and now it’s the best account on Mastodon. Entertaining, and educational. Thank you for existing.
@tubetime I've been putting off replacing the nvram in both my ipx machines :(
@tubetime they never thought it would run 30 years later...

@tubetime
One day it'll be 2023.

1994: Bah! That's preposterous!

Reminds me of this comment in leapsecs.txt in libtai:

"Note for parsers: Negative leap seconds will probably never happen, but the year 10000 will happen. Please don't contribute to the Y10K problem."

https://cr.yp.to/libtai.html

@TMakarios @tubetime that didn’t age well, negative leap seconds I’m told are now likely :'(
Do not adjust your clock: scientists call time on the leap second

Second added periodically to synchronise atomic time and Earth time can cause problems for GPS systems, software and telecoms

The Guardian
@tubetime @MildDrop72 @TMakarios I surely hope not, and I’ll only believe it when I see it.
@tubetime Does SunOS 4 still complain about a preposterous time after you've set the system clock to 2023?
@tubetime world should've ended in 2012
@amyipdev @tubetime
It ended for Sun Microsystems in January 27, 2010
@bornach @tubetime probably wouldve been better off that way
@tubetime Just seeing that terminal font made me think Solaris..I think it’s still being used in 11 or whatever they’re on now?
@Johannes_Silverfox ah, the good old Sun Gallant console font
@tubetime the Sun ‘text’ console with a serif used to look so natural to me in the 90s…
@tubetime and oh wait it is the 1, the 1 was my first computer after the hand-made one \o/
@tubetime it's pre-#Y2K compliant and AFAIK #SunOS that low doesn't even support #ZFS...
@kkarhan @tubetime - This raises 2038 questions ...
@tubetime TBF, it isn't wrong. These are preposterous times.
@tubetime That font brings back memories. I can still viscerally feel the slowness!
@jrychter @tubetime that font makes me feel the sense that I am not smart enough to fully understand how to upgrade system packages correctly

@tubetime This is probably the code triggering the warning:

https://github.com/csrg/original-bsd/blob/master/sys/sparc/sparc/clock.c#L403-L408

It seems to be checking for dates too far in the past (before 1975, by the look) rather than too far in the future. I wonder if it is reading a zeroed sector on the disk where a unix timestamp would be in a running system?

original-bsd/sys/sparc/sparc/clock.c at master · csrg/original-bsd

Original BSD history converted from CSRG's SCCS repository to Git (via SVN) - csrg/original-bsd

GitHub
@tubetime @adrianco and boy does 2023 need fixing…
@tubetime The condiments of the season and a preposterous new year! https://www.youtube.com/watch?v=Dv0hrQYbTXM&t=775s
The Wind In The Willows S04E01 Auld Lang Syne

YouTube
@tubetime triggering 1990s memories...

@tubetime mhm, seems this SunOS won't run until timer overflow...

Keep on and wish you best luck!

@tubetime, they didn't expect the world to last this long.
@tubetime You can probably patch it! 🤔​
@tubetime Honestly just kudos for Sun for getting ‘preposterous' in there
#WOTD
@ottobackwards warning: /root permissions are pretty bonkers ngl
@tubetime Wonder what the last non-preposterous date is according to SunOS?
@tubetime May you live in preposterous times.
@tubetime well, SunOS isn't wrong. It is a bit of a preposterous time.

@tubetime yeah so external drives used to ship with all the little jumpers off (ID=0) and if you plugged that into your Sun4 it wouldn't boot and then you'd call the service department ... so they wanted to make the main disk some other ID but everyone assumes the boot volume is sd0 ... so some evil genius came up with this plan.

The *good* external drive enclosures had a little pushbutton wheel thingy on the back to change their ID :-) This just plugged onto the three sets of pins you'd put jumpers on if you had a cheaper enclosure

(edited for clarity)

@tubetime the network is the computer, and the computer is a time machine