01
May
20

Daymare for DOS

I found today’s game whilst playing random shareware I found on my F19 CD. Daymare is a dungeon crawler made by Jim Todd, originally it was made for the Atari ST, but was later ported to DOS in 1992. It was released as shareware with a sequel eventually being made.

The graphics are in VGA and are reasonable for the most part. It’s not as pretty as a more professionally made game such as Eye of the Beholder, but the dungeon is rendered quite well and the other artwork works well enough. There wasn’t any sound to speak of.

At first when I started playing the game I didn’t have much idea about how to play. It’s controlled entirely by the mouse so it wasn’t too difficult to figure stuff out, even though much of what you need to know isn’t in the instructions. There is a cluster of controls arranged in a grid of 8 buttons, and a section for storing and equipping items. Basic movement and attacking were easy to figure out.

Using items was a bit trickier, but I did figure out how to do it. For food items you pick them up with your mouse and click the item on the mouth. Most food items disappear, but the vials of water leave an empty vial after consumption. You can fill these empty vials at a well such as the one found in the starting area. Other items, such as the scrolls and the bag of holding need to be in the right hand slot of your inventory, clicking the diamond (with out starting a spell) uses the item.

Spells are cast by clicking the symbols around the diamond in the correct sequence for the spell, then clicking the diamond. The spells are revealed by hints left throughout the level, such as a readable item that tells you the softens spell. Signs and other text around the levels will provide other hints.

The game starts you out in a little courtyard with a few items around on the ground. You’ll find some water vials, some treasure, healing scrolls and a weapon. The treasure seemed pointless at first, but I found out that you gain experience (and levels) by putting it in the well. The water vials are quite useful as they restore some health in addition to thirst. Since they can be reused they are one of the easiest ways of restoring health. You’ll still need to find food to fill your hunger.

The first enemies I encountered were some worms and attack dogs that were tougher than they looked. It really helps to use the softens spell, as it increases your resistance to physical damage. You’re quite vulnerable at level 1, so I died a few times before I leveled up, but after that I only died if I had bad luck or went somewhere I wasn’t ready for yet.

I’ve played for a few hours so far and feel like I’ve only really scratched the surface. So far I’ve explored most of the first level and managed to find the bag of holding in a hidden section. There is a locked door I haven’t found any keys for yet and a section that kills me quickly, so I’m guessing there are some parts I’ll have to come back to when I’ve leveled up and found some keys.

I quite enjoyed playing Daymare once I got over the initial hurdles. There are a few quality of life issues, such as only having one save slot, not having an auto map and being forced to quit the game every time you die. However I still think it’s worth a download and play. I found the sequel on the authors website, however this version wasn’t available there, if you want to give it a try you can find it on dosgames.com.

This slideshow requires JavaScript.

03
Apr
20

Sparcie goes to youtube!

I’ve been thinking about creating youtube content for years, recently I finally got around to trying my hand at content creation. The technical aspects I’ve had sorted out for quite a while as I’ve been involved in supporting the technical aspects of remote teaching for quite a long time. It’s mostly the content itself which is the biggest challenge for me.

So I set myself up to record at home on my PC, I’ve installed some tools such as OBS, Audacity, Shotcut, and Handbrake, then sorted out the hardware as best I could. At the moment my microphone is probably the part that lets me down the most, being a relatively cheap one, but with everyone currently needing such technology it’s hard to get good equipment. I have an old web camera that is also sub optimal, but I don’t really plan on using it at this stage.

So what kind of content do I have planned? I’ve been planning on making some videos about gwbasic for some time, as the content I have seen hasn’t really been the sort that I’d like to watch. My first video is basically telling the story and demonstrating one of my gwbasic games that I made when I was a kid. In the future I’ll also cover stuff made by other people and in other languages such as QBasic and Pascal. However my focus is less on the programming and more on the programs themselves. Although if someone really wants a tutorial I may make a few.

I am thinking of doing gaming related content as well, perhaps some windows 9x games. I play a lot of Minecraft so that may get a showing as well.

Here’s my first video, warts and all. Let me know what you think.

21
Mar
20

Building a Replacement Server 2.0

I built my current server about five years ago as a replacement for my Sparcstation 20 so it could be retired from the role and used in a more desktop role. Recently the machine I built suffered what I thought was a hardware failure and hasn’t been up in some time. This has brought forward plans I’ve had for quite a while to replace it with something more power efficient. I’ve been struggling for quite a while to find something that is relatively cheap, but also more power efficient than the 60-100W my old Celeron 2.4 Ghz uses.

One option I had been investigating for a while is the plethora of small form factor PCs that are generally available. I looked at various offerings from Intel, Gigabyte and others that are available and found that whilst they were indeed quite power efficient, they also tended to cost quite a bit for a bare bones system that would require buying additional components. For this reason I decided it would be better to go for another option.

I had looked among my collection of old hardware for an alternative, and couldn’t find anything that was suitable, so I was going to have to buy something new. With small form factor PCs ruled out due to cost I had to do some research. I ended up finding some videos from Phil’s Computer Lab where he used old thin client machines for various purposes such as retro gaming or in some cases being able to play fairly modern games. Checking out the specifications of the thin clients they appeared to be reasonably powerful, efficient, cheap, and you get a complete system that require minimal additional components. Sounds like a winner!

I ended up buying an HP T620 thinclient with the 1.5Ghz Quad core AMD GX-415GA chip. It came with 4 Gb of DDR3 memory and 16Gb flash in the form of an M.2 drive. Whilst not terribly impressive specs for a modern machine, it’s fairly good for 2013 technology and is certainly better than the old Celeron I currently have. The most exciting aspect of the thin client is its power efficiency. I had a fairly good idea that it would be significantly better than the old machine because the power brick is 65W, so the likely maximum energy draw has to be less than what the old machine draws at idle. Being a low power device it is passively cooled and is completely silent in operation.

So I got out my kill-a-watt style power meter to see how much energy I could expect this machine to consume, I was pleasantly surprised. With the default operating system (embedded windows 8) it used a whopping 2W after boot at idle. Being so low I was completely astonished! I wasn’t planning on using windows as the operating system, so knowing the idle power may be different I went about the software install. Like previous server installs I’m using NetBSD again, partly because it makes it easy for me to migrate, but also just because I like it.

I had some difficulties installing because of UEFI, but once I resolved that the install went smoothly. Hardware support turned our fairly well, with all the major devices except the wireless working. Given I’ll be using Ethernet that’s not much of an issue for me. After boot on a clean install the idle power consumption is around 7W, which is still quite impressive. I suspect the higher consumption is because of the open source radeon driver not having good power management, which I can’t do much about at the present time.

The only issue I had after installing the operating system was the distinct lack of storage, 16G is not really all that much and I know that I’ll need more. Luckily these thin clients can take upgraded storage, mine has a mSATA slot that some revisions of this unit don’t. So I went online and bought a 120G Kingston UV500 mSATA SSD. Had my unit not had that slot I could have upgraded the M.2 drive to something larger. There are also a number of USB ports that could be used for external storage.

I’ve now deployed the new machine and I’m quite happy with the results. I’m quite happy with the performance, which I’d say is in large part due to the SSD storage. I like that it’s passively cooled because that makes it completely silent. Lastly the extremely low power consumption makes it very cheap to run, and I managed to get mine (including the extra storage) for significantly less cost than you’d pay for most small form factor PCs.

27
Feb
20

Bob’s Fury Update: Bug Hunting

I’ve been doing some coding on Bob’s fury lately, basically making adjustments and making code faster in the hope that I could make it work well on a 286 class machine. I have been using dosbox to develop and test, but this doesn’t fully test the compatibility or stability of software as dosbox has its own quirks and does not behave exactly as real hardware does. This is where my old Microbyte 386sx computer steps in, here’s a photo from when I first bought it.

It has been very useful for performance testings as it has a turbo feature that is software controlled. You can not only toggle the CPU speed with a key stroke, but you can set the slower speed in the BIOS configuration. This has allowed me to test with the machine running at its stock 20Mhz as well as a slower speed, I’ve used 10Mhz for my testing as a rough equivalent of many 286 machines. The testing I was able to do has shown that my game should be playable on a 286 depending on the video mode. CGA and VGA both have acceptable speed for game play, whilst EGA is marginal.

The testing did however uncover a rather annoying and difficult to squish bug. If I have the sound turned on (PC speaker is all this machine supports) the system will freeze when a game event that plays the explosion sound happens. Hunting bugs such as this are difficult as there is little feedback about the potential causes. It sounds like the code supporting the PC speaker should be at fault, so that’s where I began the search for the bug.

For the PC speaker I found a support library many years ago that allowed you to use the music macro language used by the play statement in GWbasic and QBasic. It hooks interrupt 1Ch (the system timer interrupt) to update the state of the PC speaker. Whilst I haven’t had any previous issues I wondered if there was a fault that could cause the crash. At first I wondered if using floating point instructions could have been the cause. The library has a small section using floating point to determine the number of ticks a note should last. On a system such as the 386sx without a FPU such instructions cause an interrupt so that emulation in software can take over. This interrupt within an interrupt was what I thought may be the cause.

So I constructed a test program hooking the same interrupt and performing a series of floating point calculations as a test, this didn’t yield the result I’d hoped as the test program worked fine. So I then wondered if the 386 was getting another type of problem that would cause an unwanted interrupt. So I copied sections of code from the library into the test program to run in a normal procedure that would show run-time error messages and debug information I could use. No run-time errors appeared and the results of the required calculations appeared to be correct.

I have a few ideas left to test, but I’m left with quite a puzzle regarding the cause. This does illustrate the need for testing on actual hardware, it’s usually better to test on many machines. Unfortunately I don’t have a large supply of 286 and 386 class machines, although I have a few I may be able to repair. I need to test on another machine because there could be something specific in the design of the Microbyte machine that isn’t compatible and is causing the issue.

07
Feb
20

Bloxinies and Bloxinies II for DOS

One afternoon I had a bit of spare time, whilst looking around the doshaven website for something to play I ran into two simple puzzle games. Bloxinies and it’s sequel Bloxinies II. These were both made by Sebastiaan Jansen (also known as Thandor) in 2013 and 2016 respectively.

The first game is much like Paganitzu in many ways. Your character, Bloxinies has gone through a gate into a puzzle realm. It has to collect all the diamonds in each level before it can move onto the next, eventually to be able to return home. The levels contain hazards similar to those found in Paganitzu.

Technically the game uses CGA graphics and some basic PC speaker sound. The graphics are fairly well drawn for CGA, although there is basically no animation. Whilst it’s basic, the simplicity works with a puzzle game like this.

I found the levels a bit simpler than those in Paganitzu, but still quite challenging. The only thing that was annoying is running out of lives and being sent back to the start of the game. To make progress it’s important to conserve your lives as best you can, so when you return to a point of difficulty you have the best chance of success.

This slideshow requires JavaScript.

The second game is a much improved version of the first. Some new features have been added such as a few new enemies, gates and levers, the ability to use bombs, and extra lives. Notably there is multiplayer with a special set of levels. Each person has their own controls on the same keyboard.

There have been some technical improvements as well, mostly in the graphics which now supports VGA. Appropriately there is a significant improvement in the art, there’s more variety in the blocks that make up the walls in addition to the new features, making it more pleasing to look at. The sound system appears to have remained the same, retaining PC speaker sound.

The levels are more complex due to the new features, but at the same time have a shallower learning curve in the sequence. I feel like this is because the designer had more features to explore before increasing the difficulty. This gave me a bit more time playing before I hit any major road blocks, which were more punishing because of the lives system being carried over from the last game. Levels from the first game are included if you wish to play them with the improved graphics.

This slideshow requires JavaScript.

The only real complaint I have for both games is the lives system, which I feel doesn’t really belong in a puzzle game. Otherwise I quite enjoyed playing both of them. I didn’t get a chance to dive deeper into the multiplayer aspect of the second game, what with lacking a second player, but it does certainly look interesting. If you’re looking for a download you can find it here on the authors website. He’s included the source code for each game and a means for editing levels if you so desire. I was pleased to see it’s implemented in pascal, mostly because I use it myself for my own DOS projects.

13
Jan
20

Cyrix 6×86 Generic PC with ECS P5VX-Be Mainboard

During the recent holiday season I took the kids to visit my parents out on the farm. During my time there I had some time to drag out some old computer hardware from storage. The PC  I dragged out today was bought as an upgrade and replacement for our then aging 386. I don’t remember exactly when we got this machine, but judging by the date codes on some of the hardware it has to be sometime in 1998. It is a socket 7 based system with a Cyrix 6×86 PR 166Mhz with 16Mb of RAM assembled by a local system integrator. So it was certainly a fairly budget machine for the time, however it felt like a huge upgrade coming from what we had. It has been stripped for parts, but the fundamental components remain, here’s a photo of the chassis and another of the remaining components

Taking a look inside we see most of the PC is still there, the main things missing are the optical drives, floppy drive and some cabling. Whilst it’s not complete the majority of the components are in working order.

Taking a closer look at the lower front of the mainboard we can see that there is one of those annoying dallas clock chips that can go flat and leave a PC unable to remember its configuration. The CPU and its heatsink are also mounted here, the Cyrix chips are interesting beasts, whilst they were budget parts in many senses they achieved good results depending on the workload. Typically workloads making heavy use of the FPU were better suited to either Intel or AMD parts, but other loads that make heavy use of the main integer core could run faster on these Cyrix parts. Our experience with this particular sample was that it could do all the same jobs and play similar games, but sometimes your performance would be worse or better depending on what you were doing.

My Dad used this machine for the farms business accounting, and for that it did a fairly good job. Being a teenager during this machines work life I used to play quite a few games on it. DOS games worked very well in general, games like doom basically ran perfectly, and even the first Quake did ok as long as you didn’t crank up the settings. Windows 95 gaming depended on the game, partly due to the limited amount of RAM the machine had, which I think limited what we could play more than the CPU. 3d games in general didn’t work so well, partly due to the lack of a 3d accelerator and RAM.

The graphic card was fairly basic being just an Octek S3 Trio64V. It is quite compatible with DOS games and works ok with 2d applications, but it doesn’t do any 3d acceleration at all. 3d games we played had to use software rendering, some of which didn’t perform well while others were quite playable. These cards were quite common due to their low cost.

The Quantum Fireball Hard disk was about 1.6G in size from memory, its death is  what ultimately forced this machine into retirement. From what I’ve read online this was a relatively fast drive in it’s day, which makes it an odd choice for this otherwise fairly budget system. I seem to have had bad luck with Quantum drives as they seem to die more often than others I’ve owned. It was quite dirty before I wiped the dust off, although I think the dirt you find out on the farm is generally less hazardous than dust in the city.

The motherboard is a P5VX-Be made by Elitegroup (also known as Elite or ECS). It wasn’t a particularly high end board for the time, but it was perfectly serviceable for most tasks. There are two issues with this chipset that could be a problem. Firstly the chipset only caches the first 64Mb of RAM out of a 128Mb maximum which could drastically slow down windows if you had more than 64Mb. Also the maximum FSB that it supports is 66Mhz, which meant it couldn’t support some of the faster AMD and Cyrix parts that were available.

These two issues aren’t as bad as they sound, remember that most systems of the day had 16Mb or 32Mb of RAM with only very high end systems using 64Mb. Also looking around at FSB speeds of socket 7 CPUs there aren’t that many that require higher than 66Mhz speed. So it would have been a very unusual (and expensive) build that couldn’t really use this board. For a retro enthusiast today it could be a problem, but for us at the time it was perfectly adequate.

Other features of the board are the usual integrated peripherals such as floppy and hard disk controllers, serial and parallel ports. Also integrated is a Crystal SRS (CS4327B) sound card, a sound blaster compatible device that supported DOS games as well as having a decent windows driver. We were still playing quite a few DOS games at the time, so this was quite a bonus and worked exceptionally well. Especially considering our previous machine only had the PC speaker for sound.

Working with this board isn’t too bad, as the jumpers are mostly labeled in a way that is visible while the board is installed. It doesn’t seem to be too hard to work on, although I’d suggest having the manual so you know what configurations are valid and to double check your jumper settings.

Whilst this machine is anything but high end it gave us a pretty good service life and was capable of doing most tasks that we gave it. Even if it was sometimes not particularly fast it was a very big improvement over the 386 and 486 machines we had previously There were limitations in what games we could play, but that really only became very limiting once 3d acceleration became mandatory for gaming.

01
Dec
19

Some DOS Games for the IBM PC

The early IBM PC was not really all that good at playing games, it was after all primarily designed for businesses. Despite this many developers did make games for them, although they were typically very limited by the capabilities of the PC. I didn’t get to play any of these older games when they were new, mostly because I was quite young, but also because we got our first PC in 1990. Being a 386sx @ 20Mhz it wouldn’t play most of them.

Because many of these older games are simpler and shorter I’m rolling up a few of them into a single post. The games for today are Bowling, Hardhat Mack and Moonbugs.

This slideshow requires JavaScript.

Bowling is a simple text-mode ten-pin bowling game. There’s not really a whole lot to say about it. After you enter a number for the game speed, the number of players and their names it jumps straight into the game. The players take turns to bowl, which basically is just striking a key when the ball lines up with where you’re aiming. The pins fall down in a deterministic way that eliminates much of the variety you would usually have. This is partly because the ball is the same size as the pins and there isn’t much vertical resolution in the alley. This one is simple enough it may have been implemented in BASIC, although there isn’t any way to know for sure.

This slideshow requires JavaScript.

Hardhat Mack was originally an Apple II game made by Michael Abbot and Matthew Alexander in 1983, it was ported for the IBM PC the next year by Dana How and Kevin Gilmore. It’s a single screen platform game starring the titular character Hardhat Mack, who is working on a construction site. Like in Donkey Kong, Mack has a different task in each level to complete. There are three different stages to complete before the game starts again on a slightly harder difficulty level.

Technically it looks much like most other games of the era, with 4 colour CGA graphics and PC speaker sound. The artwork looks fine, but the technical implementation seems a bit slow and suffers from colour distortion due to the way the sprites are drawn and moved, most likely using the XOR operation. It also affected my ability to get a good screen shot whilst playing in dosbox.

The controls takes a little getting used to, you press a directional key and mack continues to move in that direction until you press down (for stop) or change direction. Mack and the enemies move fairly slowly, so it’s not a particularly action packed experience, but there is some challenge avoiding the enemies and completing the level. That being said other games like Freddy’s Rescue Roundup have more and deeper game play.

This slideshow requires JavaScript.

Moonbugs was made by Windmill Software back in 1983 who are much better known for making Digger in the same year. Moonbugs is an arcade style game much like many of the early arcade shoot ’em ups, what makes it unusual is the graphics mode that it uses. It is one of the few CGA games to achieve 16 colour graphics in what is essentially a hacked CGA text mode.

The graphics whilst chunky are very nicely implemented. Animation in general is very smooth even with a large number of objects on screen and the movement looks quite good. Sound is of course PC speaker, which is again implemented very well, I’m not sure how they achieved it, but it sounds very much like an old school arcade game.

The game play is a combination of ideas from arcade games with twist of its own. The main enemies move around the screen and shoot in a way that reminds me of the insects in galaxian. They will swoop down and steal some of the uranium fuel at the bottom of the screen, you can shoot the enemy to recover the fuel. More of them spawn as the game goes on at a rate dependent on the level and up to a limit as well. A bonus bad guy will occasionally fly along the top of the screen like in space invaders which you can shoot for a bonus and later levels seem to include homing missiles that you need to destroy or avoid.

The main aspect of the game play that is original is the machine collecting the uranium fuel that you’re protecting. The machine gradually collects the fuel over time, once all of it is collected and the machine connects to the dish the level is over. You get a bonus for each piece of fuel collected at the end, so having the fuel stolen reduces the time available to shoot enemies and your score.

Moonbugs is colourful and noisy in a way that would fit right in an arcade setting. It’s fairly challenging without being painfully hard. I quite enjoyed my time with it. The best way to play it today is via dosbox with cycles and settings to match a CGA XT machine. You can find it at the digger remastered site (scroll down a fair bit) along with other Windmill Software games.




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...