Posts Tagged ‘NetBSD

01
Jun
17

SparcStation Desktop project.

Unfortunately I’ve been neglecting my poor old Sun hardware, mostly because of time and space constraints. I thought I’d try to go some way to correcting this by actually beginning the process of setting up the SparcStation 20 as a vintage desktop work station. I’d been planning on doing this for ages, as long ago as when I built the replacement server machine.

Hardware wise I’ve not acquired anything new, although everything needed a test and some basic cleaning to get it working. I’m still having issues, but I’m unsure if it’s an hardware fault or a problem with the software I’m installing. We’ll get to the software in a moment, first we’ll look at the hardware installed.

At the moment I have 3 CPUs in the machine. They are all V8 Supersparcs with two 50Mhz chips on one module and a 60Mhz one on a module on it’s own. Each module has 1Mb of cache memory which doesn’t sound like much now, but was a large amount when these machines first appeared.

Frame Buffer

Frame Buffer

I’ve currently got about 304Mb of memory installed, I had more but unfortunately one of the sticks that was in it fails to detect anymore. I’d like to have a VSIMM as that would allow me to use the built in cg14 frame buffer (graphics card) which is probably the best performing one available for machines of it’s type. I managed to purchase a 2Mb TGX+ frame buffer and adapter to connect it to a VGA screen, which is doing an odd resolution of 1152×900 at 8 bits per pixel. It’s obviously not the fastest, but it does the job. I’ve selected an 136Gb 10K RPM SCA drive for the hard disk, certainly a bit of overkill, but it would just be sitting on my shelf otherwise.

The initial issue I had was stack under run errors after the boot screen came up and the machine attempted to boot. My first instinct was of course failed memory, which lead me to find the undetected memory module. But no matter which memory I ran I had the same problem. After some poking into the system environment (kinda like the BIOS settings in the PC but without the nice interface.) I found some items that were not at their defaults and changing them back seems to have fixed the stack under run.

Dual CPU MBUS module

Dual CPU MBUS module

Unfortunately that’s not the end of the issues, as after installing and running NetBSD for a while the machine will hang, reset or have a watchdog timer trigger. This certainly could be faulty RAM, but the power supply is also a potential suspect as is the operating system itself. I need to follow this up with some more testing, unfortunately I don’t have a spare PSU to test with.

Software wise I’m much more prepared and have had much more success. I’ve been using Qemu, which does full-system emulation for a number of old and different platforms, including Sparc systems. Qemu has been useful for building packages and the kernel specifically for my machine. Something I had done ages ago when I first intended to do the install.

At the time I built for NetBSD 6.1.4 which is the OS I’ve installed and tried out on the machine. It’s out of date by quite some margin now, so I’ve set up a new virtual machine to start work on getting 7.1 packages and kernel built. It has a bunch of improved hardware support, particularly in the frame buffer acceleration, so I’m keen to see how it goes. I’m still building packages I want for it, but I’m happy with 7.1 under qemu so far. I’m hoping the improved hardware support helps with the hang/watch dog/reset issues.

When it’s all done, I’ll post about what it’s like to use the machine for specific tasks, like say browsing the web and checking email.

18
Apr
15

Xsokoban on NetBSD

Having been busy and stressed out lately I haven’t had much time for tinkering or gaming. This is where smaller games that you can play as a quick distraction can help, as they are easy to squeeze in between other jobs, and todays game is one such game.

Xsokoban is obviously a clone of the old classic game sokoban. The original was made for the PC-8801 way back in 1982 by Thinking Rabbit. It has since been implemented and ported to pretty much every system, Xsokoban is one such port for Unix systems running X windows.

There isn’t anything really remarkable about this particular port. The quality of the graphics is quite reasonable, and it works well on pretty much any system I’ve tried it on including my older machines such as the Sparcstation 20. I’ve even played it over SSH via my comparatively slow ADSL2 connection, and it worked really quite well.

Interestingly the game has been studied in the field of computer science, it turns out it’s quite a difficult problem computationally, being PSPACE-complete. Lots of different researchers have worked on different algorithms for solving and producing optimal solutions. The complexity certainly makes me feel better about getting temporarily stuck on level 6!

As far as enjoyment goes, it’s really enjoyable for the puzzle solver in me, even when I’m stuck. It doesn’t take a huge commitment to play for a short while, and is quite challenging! This particular port isn’t any better or worse than any other, so don’t go out of your way, but NetBSD and FreeBSD users will find it easy to get running.

This slideshow requires JavaScript.

20
Oct
14

3rd Aniversary and Work on the Sparcstation

This weekend marks the third year I’ve been writing this blog. The first thing I wrote about was my Sparcstation 20, which I had just acquired at the time. I installed NetBSD 4.01 on it, which was reasonable then, but has become quite out of date now. So 186 posts and 3 years later I’m in the process of upgrading the machine to NetBSD 6.1.5.

Machine without the PSU

Machine without the PSU

This has been a long time coming, and there are a number of reasons for the upgrade. Firstly, the older version of NetBSD was becoming more difficult to keep software up to date on. I had stuck with 4.01 for some time because of performance issues I had when trying out 6.1.2 last year. But some packages didn’t update properly lately and I had been left with some software working and others just becoming broken. I could have stuck with an older version of pkgsrc, but that has problems as well.

Another reason is I’ve received the hardware required to use the machine as a desktop machine with screen,keyboard and mouse instead of a headless server. I retired the machine from active server duty and built a replacement server quite recently to facilitate both upgrading the OS and hardware to try and make it a practical desktop workstation. I was very fortunate to receive a donation of a keyboard and mouse suitable for the machine, and have since bought the frame buffer card and adapter to complete the hardware necessary.

Frame Buffer

Frame Buffer

I got the hardware up and running last weekend and powered up the machine with everything set up for the first time. I was happy that without upgrading the OS, I had the display, keyboard and mouse all working with an X server with little effort. I was impressed that the X server seemed quite speedy compared to what I expected. However X server (Xsun) was really outdated and didn’t seem to support everything thrown at it.

So I began to install NetBSD 6.1.4. I found it was best to use the serial console for the install as the install disk does not handle the sun console on the frame buffer properly. It seems that it just doesn’t have the TERMCAP entries for the sun console, as once the system is installed the console works fine. The install worked pretty much the same as the older version with a few minor changes. The performance of 6.1.4 seemed better than the last time I tried an upgrade, but still isn’t as fast as the older 4.01 release.

So I’ve begun building the system from sources to take advantage of the V8 Supersparc. I’m assuming the binary distributions you download are actually built for the slower V7 Sparc that can be common in some of the other older and slower machines. The build process is surprisingly very easy to follow. We will see if there is any significant difference when it’s finished building.

 

08
Sep
14

Building a Replacement Server

I’ve been using my old SparcStation 20 for about 3 years for storing my source repositories, allowing VPN access and web serving among other functions. I originally set it up like this as an interesting project to see if I could make good use of exceptionally old hardware with more modern software (NetBSD in this case) and it turned out to be quite handy. The experience as a whole has been a very positive one.

Sun Keyboard and Mouse

Sun Keyboard and Mouse

Now the time has come to not so much retire the SparcStation, but move it into a new function as a vintage workstation. I was very fortunate to receive a donation of a type 5c keyboard and mouse suitable for use with it, all I have to get is a frame buffer card and I can plug in a screen and use it as a desktop. Fortunately frame buffer cards are much easier to find than keyboard/mouse combinations so I shouldn’t have an issue finding one.

Having decided to build a new server machine, I went looking through my collection of old hardware to see what I could build out of my spare parts. I already had the large tower case recently donated, so I checked out what was installed in it. Turns out it was a Duron 800, which is quite reasonable, but after measuring its power consumption (about 70W without hard drives) I decided I could make a machine that was cheaper to run with some other parts.

Obviously I want something more efficient than the SparcStation, which uses around 130W with everything installed. It turned out to be quite difficult to find x86 hardware that is efficient once everything is installed. After looking at what I have and doing a bit of research I decided to try out the old Coppermine Celeron 800Mhz as it had quite a low TDP. Powered up with a graphic card but no hard disks it used about 60W, unfortunately it didn’t want to boot, and no amount of prodding got it to work.

Looking in my collection of old hardware I didn’t have many alternatives. I could use a socket 7 based system, but that would likely be _slower_ than the sparc and may use a similar amount of power. I have some Pentium II boards, but I wanted them as spares for my Win98 system. In the end I used some suitable socket 478 (Pentium 4) hardware, which initially looked bad efficiency wise. The P4 of course was known for running hot, and hence also using lots of power.

My older brother donated a MSI socket 478 mainboard to me some time ago without a CPU. I looked through my collection of CPUs and found a Celeron 2.4Ghz and heat sink. I installed it and 1Gbyte of DDR and it worked with little effort, but the power consumption without hard disks was about 80 something watts, not ideal. I decided to press on with this hardware as I had no other vintage parts that would be suitable, and that power usage ought to be the worst for the board and processor. That and I don’t have money for new hardware at the moment.

Machine Assembled

Machine Assembled

So I assembled the machine in the chassis with a Pioneer DVD drive and two Western Digital hard drives. I selected two 80Gb ATA WD drives as they turned out to have the best power consumption and reasonable capacity. All together, just sitting at the BIOS screen the machine used about 100W. Again a worst case and not that great a saving, but at least it’s significantly faster.

I decided to stick with NetBSD for this build for a few reasons, firstly it is simpler to migrate the configuration and data from the old machine. Secondly I like NetBSD because of how light it is and how easy it is to work with. I downloaded the latest version (6.1.4 as of this writing) and went through the install process. Installation was fairly easy, but I couldn’t get X to work correctly on my hardware. I didn’t have a local X server before, so I didn’t worry about getting it to work beyond XDMCP.

After installation I measured the power consumption of the machine at idle, I was pleasantly surprised that it dropped to about 65-70 Watts, a nice improvement over the sparc. Power usage peaks at about 100W when the machine is under full load as I first thought. After setting up the hard disks to power down after idle for a while I managed to reduce this to just bellow 60W.

I’m now happy with the hardware I have set up, although I could use modern hardware and save even more power. I’m currently in the process of setting up the software. I’m rebuilding the kernel and userland for NetBSD. It’s a surprisingly easy process, and well worth it especially for older hardware. I’m not ready to deploy the machine yet, but it looks like it will work well.

24
Aug
14

OS Shootout: Trying to get the Sun Frame Buffer to work.

Frame buffer

Frame buffer

Quite a while ago I bought a Sun frame buffer (Wildcat Expert3d-lite) on ebay in the hopes of turning either my Sun Fire machines into a workstation. I had FreeBSD on the 280R and Gentoo Linux on the V440. FreeBSD didn’t like the card as it doesn’t have support for it, the version I have installed has become out of date and was having trouble updating packages. The Gentoo install had suffered a similar fate, I went to update it and found that the package system had become broken and couldn’t download the latest update.

So this weekend I decided to try a number of different operating systems to see if I could get the frame buffer working and see if there was a newer OS that would work better. Here are some notes about the different systems I’ve tried.

I decided to use the V440 as the base machine for performing the tests. I had been using Gentoo linux on it and had some minor success using the frame buffer. I was able to get a basic text console working beautifully, and it even displayed Tux the Linux penguin during boot up. But unfortunately the fbdev driver for X didn’t work producing some horrific corruption on screen, but the mouse and keyboard appeared to work.

Sunfire V440

Sunfire V440

The first fresh OS I decided to try out was NetBSD as it works well on my older Sparc machine. The installation went relatively smoothly, but I had to use the serial console in order to do it. I looked for support for my particular frame buffer but didn’t find any, even for some of the other available hardware. At this point I went to the documentaion online and realised I need not have tried it as the UltaSparc machines I have are not in the supported list for NetBSD. Although most hardware works, it seems that older machine are supported much better.

Next I decided to try the latest FreeBSD, the first time around I was using 8.3 which was quickly superseeded, but it was the only one that worked on the Sunfire 280R. So I downloaded the latest at the time of writing this, 10.0. Reading the documentation seemed to indicate that I’d be unlikely to get anything on this frame buffer at all, but if I buy a different type in the future there is good support. The installer was much easier than last time, again it required the serial terminal but it had everything set up very quickly. Of course the downside is the amount of time needed to build packages from ports, but thats a minor inconvenience if you leave it to build over night. I built and installed X, and with no surprise this frame buffer didn’t work.

In searching the internet for systems that support this particular device I came across OpenBSD. I had not really tried it out before so I didn’t know what to expect, but my hardware was listed as supported including the frame buffer. So I downloaded the install CD and began the process of installing. Compared to the other systems the installer is very _very_ basic, but at least you could do it from the computers console. Unfortunately I couldn’t get this one to complete installing, as the system rebooted every time it tried to extract the base system. At first I thought it likely this would be a hardware fault (as I had some in preparation for this) but I ran the system through its diagnostics multiple times and it passed every time. I may transfer the frame buffer into the SunFire 280R and try this system out again, but I think there’s something wrong with the installer/disc. The real shame is I saw in the kernel messages that it does indeed support my card!

Lastly I returned to an old favourite, Debian Linux. It is similar to Gentoo in that it supports the basic hardware and some framebuffers. Since Gentoo had some basic functionality I hope Debian might work better. I booted up the installer and was surprised to get the normal console-based Debian installer on the machines frame buffer. The installer was nice and easy, no major problems. I reboot into the new installation to see what would happen. Just like Gentoo the text console worked beautifully on the frame buffer, but X didn’t work. You could see the login screen behind some kind of strange corruption, but it seemed the keyboard and mouse were working as I could log in! I suspect Debian would work very nicely if I had a different frame buffer, but perhaps the guys working on the kernel will eventually fix the wildcat support.

So to summarise I found that Debian and FreeBSD would be quite workable if I had another frame buffer (or didn’t want to use it) and that OpenBSD might work well with this one if I could just manage to work out why it is crashing during install. NetBSD just doesn’t support the newer UltraSparc hardware well enough to use with a frame buffer, but might work quite well as a server. Basically I’m going to have to get another frame buffer card, then I can install either FreeBSD or Debian and have quite a nice Sun workstation.

14
Apr
14

Artsoft games on NetBSD

R'n'D Menu Screen

R’n’D Menu Screen

Today I am looking at two games for Unix systems called Rocks’n’Diamonds (R’n’D for short) and Mirror Magic. Both were developed by Artsoft which seems to consist of one person, Holger Schemel. Both games are sort of clones of older games for much older platforms. Rock’n’Diamonds is a Boulder Dash like game that was first released in 1995 and last updated at the end of 2013. Mirror magic is very much like Deflektor, originally released in 1995 and updated until 2003. Whilst both games are based on older games they both add features to the old formula. Today I’ve built and played these under NetBSD on my SparcStation 20.

Text Box

Text Box

Being made by the same person, both games share some similarities, particularly in the art style. The menus and sprites are very colourful, they almost look like they belong at a carnival. Everything is well drawn, animated and items look like they should. Items brought over from the older games have been updated graphically, they don’t look identical to the originals but are also easily identifiable for players of the old games.

Green Goo

Green Goo

They run of the same graphics engine originally developed for R’n’D which supports X11 and SDL mainly. The X11 versions work quite well, even on exceptionally old hardware like my old SparcStation 20 which is quite impressive. They work moderately well over longer distances via SSH, but the latency and bandwidth can be a problem on slower links whilst LAN speeds works flawlessly. There is a SDL version, but the version I installed (from Macports on my macbook) seems to be significantly slower than even X over SSH. This is hopefully just something peculiar to the Macports version on Mac OSX.

Playing Via SSH

Playing Via SSH

Both also have the same sort of sound engine and from what I can experience on the Macports version they are good for what they are. I only got to test sound in R’n’D and unfortunately during game play you can get swamped with the same sounds playing repetitively. So you might enjoy your playing experience more with the sound off. Playing on NetBSD on the old Sparc machine this wasn’t an issue as sound doesn’t work there.

Mirror Magic Menu Screen

Mirror Magic Menu Screen

The game play for R’n’D is interesting in that it combines elements from games such as Boulder Dash and Sokoban, and includes most of the elements added by Supaplex and Emerald Mines to Boulder Dash. The game has three game engines that any level can use. Rocks’n’Diamonds, Supaplex and Emerald Mines. The later allowing levels from those games to be played and solved as they are in the original. I haven’t played enough of the levels to give a good impression of what they are like as a whole, but those that I have played have been fun. I did try levels from the older games and they seemed to work quite well.

Holy balls of steel!

Holy balls of steel!

Mirror Magic similarly has its roots in older games, specifically Deflektor and Mindbender. Basically there is a Laser, a bunch of mirrors, obstacles, and stuff to destroy in the levels. You need to direct the laser with the mirrors to destroy objects in the way and get the beam to the target. Usually this requires destroying all of the metal spheres in the level. You have a limited amount of fuel, and the laser can over heat if the beam hits the wrong type of object. It’s important to keep an eye on both the fuel and heat gauges as running out of fuel or over heating can sneak up on you. What I’ve played so far has been quite fun, although I was disappointed that only levels from the old games were included.

Balls busted

Balls busted

Both games have a level editor which is easy to use. The editor in R’n’Ds is quite flexible and allows users to create their own custom objects that behave differently to the stock ones. This allows people to make all sorts of different creations, one even claiming to have recreated Zelda! There are lots of different level packs available on the Artsoft website for R’n’Ds, but not really any for Mirror Magic. In either case, if you do happen to beat all the levels there is still lots of gameplay in the user created levels and building some of your own.

What Mc Duffin?

What Mc Duffin?

Despite being based on older games that are well known, I think both of these games bring something new to the table. R’n’Ds brings many more levels including user created ones and variety in game play that the original games didn’t have. Mirror Magic is a decent remake of the originals with the addition of a level editor. Both run on Windows, Mac OSX, Linux, and BSD. There is even a DOS port of both although the port of R’n’Ds is a little out of date. If you like any of the old games on which these are based you might wanna give them a try.

01
Dec
13

Some NetBSD Games

XV

XV

Having recently upgraded the disk space on the Sparcstation I decided I would go about installing a bunch more useful utilities and some games. I installed some image processing and capture software called XV so I could capture screenshots on the machine, this is what I’ve used to capture todays screenshots. Todays games were too small to justify a whole post to themselves, so I thought I’d post about a few of them together.

greed

greed

Greed

One of the first games I built and tried was greed. It runs in a colour terminal and can be played via SSH or telnet. The game is very simple, you are an @ symbol in a playfield full of numbers. You move in the direction of one of the numbers which causes you to move that distance, erasing numbers as you go. In order to be allowed to move in a direction you must be able to travel the full distance specified by the number without hitting a border or an area you’ve already erased. The game ends when you can’t make any more valid moves.

You use the numeric keypad to move, which for me felt reasonably intuitive. The game has some nice in game help, and is simple to get running and play. It doesn’t take long to play so it’s good to for a quick distraction.

icbm3d

icbm3d

Icbm3d

This game is modeled after missile command from the arcades, but with one difference, it’s in 3d. The vector graphics are quite nice but can be a little slow over a network connection for some reason. Fortunately the game has some built in commands to change the graphics settings. The controls are also a bit awkward, I found that it was too sensitive, such that small mouse movements often moved my targetting reticule way too far. Fortunately the difficulty curve isn’t too steep, but the control for this really let it down.

xbomber

xbomber

XBomber

Xbomber is based on the bomberman series of games. It is interestingly a multiplayer game, but not implemented the way you might expect. The one program can connect to multiple X servers, allowing two players per server sharing the one keyboard. There is a maximum of four players over four X servers. You can also play solo against the computer AI, but it really is quite a weak player, it looks like it is just making random movements. It is probably not the easiest thing to set up the multiple displays, X authority stuff would surely get in the way, but I’m sure it can be done.

xjump

xjump

XJump

XJump is a simple platform game where you have to climb a tower. If you fall off the bottom of the screen the game is over. Controls are simply the arrow keys and work quite well. The part of game that will catch you out most often is the seemingly frictionless movement of your character. It is quite easy to jump and fly off the other end of the platform you’re jumping for. So it means you have to be quite careful how fast you move when jumping larger distances. Another game that is quite fun, but short.

xroads

xroads

XRoads

I’m not sure where the name from this one comes from, it is a simple maze shooter, where you have to collect a number of animating stars around the level. You have to either avoid or shoot the badies around the levels, some of them will shoot at you. I’ve been caught out by bullets wrapping around the edges of the screen, I often shot myself! You can use this to your advantage, but more often than not it ends up hurting you. It’s a good little distraction, but the graphics could have been a little prettier.

xworm

xworm

XWorm

Finally XWorm is basically a snake game plain and simple. It has some nice graphics, and simple controls that are easy to use. It plays quite fast, so you have to have pretty good reflexes to play for very long. There is only a bunch of mushrooms on screen to avoid, and a fence around the edge, so even Qbasic Nibbles has a bit more variety! Otherwise it plays quite well.

So there you have it, a few simple games that work on pretty much anything you can run NetBSD on with an X server (or from an XTerminal). Most of these were simple little distraction type games rather than anything you’d spend a lot of time playing. They are for the most part quite fun, and a reminder of what games under *nix like systems used to be like.




Blogs I Follow

Enter your email address to follow this blog and receive notifications of new posts by email.


Mister G Kids

A daily comic about real stuff little kids say in school. By Matt GajdoĊĦ

Random Battles: my life long level grind

completing every RPG, ever.

Gough's Tech Zone

Reversing the mindless enslavement of humans by technology.

Retrocosm's Vintage Computing, Tech & Scale RC Blog

Random mutterings on retro computing, old technology, some new, plus radio controlled scale modelling.

ancientelectronics

retro computing and gaming plus a little more

Retrocomputing with 90's SPARC

21st-Century computing, the hard way

lazygamereviews

MS-DOS game reviews, retro ramblings and more...