April turned out to be an eventful, fruitful and an exceptionally busy month over here at 16-BIT Shock HQ. Unfortunately all that activity didn’t translate to regular blog updates which isn’t something I’m particularly happy about. Ideally I would love to post an article at least once a week but that’s not possible with my current work schedule. Nevertheless, I do plan to post on more regular intervals in the coming months.
The increase in workload over April was due to fine-tuning and tweaking of existing game projects. Some further fine-tuning was also applied to the current business model. In order to deal with a shifting gaming landscape, some changes were necessary in how future projects are to be executed. PC & mobile game development are two entirely different beasts and require their own unique approach.
Another area I spent considerable time on is sharpening my physics GML scripting skills. While GML shares a lot of similarities with Java and even C++, it does have it’s unique quirks which can be both funny and frustrating. Generally I only foresee limited use of some of the physics code I put together. Mainly for craft and character movement as that’s what it’s most suited for.
I even got round to using GM Studio’s 3D features, quite a change for a 2D game developer. Surprisingly it seemed a lot easier to implement a 3D environment than I expected it to be. There are no plans to develop any 3D games but if I ever decided to move in this direction, I would love to make something similar to Namco’s Cyber Sled or Sega’s Virtual On. However I’ve been experimenting a bit with pseudo-3D – the type of 3D that consists of scalable 2D bitmaps ala After Burner, Out Run, Galaxy Force, Space Harrier etc.
Now this is far more challenging than I expected but I finally got some neat results. There is quite a bit of math involved and precision is mandatory. Any scalable bitmap that is 1 – 2 pixels out of place will seriously mess up proceedings. It’s evident why this type of 3D fakery fell out of favour and 3D polygons were readily adopted back in the mid-90’s. Far from a practical way to depict a 3D world effectively, but nonetheless it’s cool to see again – and quite the nostalgia trip.
This technique will find it’s way in some of my game projects, simply because it’s interesting and not commonly used nowadays. One of the games I’m currently busy on, comprises of scalable 2D but in a subtle manner. It will also be a title that is drenched in 80’s aesthetics to the hilt – I wouldn’t have it any other way 🙂
Irem’s Ninja Spirit is somewhat of an underappreciated arcade title that just didn’t get the attention it rightfully deserved. Nor enjoying a level of obscurity that would gain it some form of cult or underground notoriety. Just a rock-solid, well-crafted, side-scrolling action game – a near perfect experience. Such was the level of quality that it received Electronic Gaming Monthly’s (R.I.P.) first ever 10 for the Turbografx-16 home conversion.
Personally, Ninja Spirit feels a lot like Contra but with a ninja as the main protagonist. There’s a similar intensity, pacing and duration towards completion. Another similarity to Contra is it’s awesome soundtrack that is both memorable and melodious. Further adding to Ninja Spirit’s already well-conceived visual aesthetics and atmosphere. I really can’t think of background music that fits so incredibly well with the on-screen events.
The player will transverse several diverse landscapes such as temples, cliffs, swamps and woodlands which comprise individual stages. Each stage harder than the previous, as the difficulty ramps up so does the blood-pumping intensity of the music. Irem’s craftsmanship certainly shines through, after all this is the company that brought us R-Type. An interesting side-note is that Irem utilized Yamaha’s YM2151 OPM FM-based sound chip, sporting 4 operators and 8 channels. This sound chip was also used on other arcade boards from Sega, Namco, Capcom, Konami, Data East and even found a home in Sharp’s X1 and X68000 home computers.
There’s no denying that FM-based sound chips just sound way better than the forerunner PSG (programmable sound generator) of earlier generations. Since Ninja Spirit was ported to various home computers, most of which had a PSG sound chip, replication of the original arcade bgm was often poor. However, the Commodore 64’s trusty SID chip provides the best rendition of Ninja Spirit’s soundtrack among the 8-bit home conversions.
Naturally if one wants to enjoy the best possible home port of Ninja Spirit, the NEC PC-Engine / Turbografx-16 version is the way to go. Also an incredibly satisfying game to complete and play all over again.
Video games are an electronic medium and quite naturally require some form of computer hardware to run on. The CPU (central processing unit or processor if you prefer) has always played a vital part in the creation and execution of game code. Without this important component, video games would simply not exist. After all the processor is essentially the brain of a computer system…basic stuff!
And just as human brains can vary in intellectual capacity, various makes and models of microprocessors offer different performance capabilities. For game related tasks, the GPU (graphics processing unit) plays an even greater role within the modern game development paradigm. However, this article is not about development techniques and how they are to be applied to modern hardware. Rather, we will look at a specific microprocessor which played a leading role in defining gaming during it’s early stages.
Two prominent periods of gaming are the 8-bit and 16-bit eras, and quite frankly of greatest import. As shiny as our games are, and powerful as our hardware is nowadays – none of this would exist without the groundwork laid down during those halcyon days. And both those eras brought forward to amazing microprocessors that truly revolutionized gaming, namely the Zilog Z80 and the Motorola 68000.
Zilog’s Z80 truly helped to kick start affordable home computing and arcade gaming from the late 70’s onward. The Z80 is an 8-bit processor, which is closely based on Intel’s earlier 8080 CPU. Due to it’s performance and versatility, it was adopted by a large variety of computer and arcade amusement vendors. Either Zilog’s original CPU, clones or variants of the Z80 architecture was incorporated into motherboards worldwide. Everyone from Sinclair Research right through to Sega made use of this mighty little chip, benefiting gaming inexplicably.
Some will argue in favour of a rival 8-bit microprocessor, namely the 6502 by MOS Technology. Also very popular and widely used, particularly in the home computer market but also made in-roads in the arcades thanks to Atari. However, the true acid test of which 8-bit processor was better, rests with the greater adoption enjoyed by the Z80, especially among Japanese arcade manufacturers. From Namco’s Galaxian through to Irem’s M52 system boards, the Z80 was the CPU of choice.
None can downplay the wide adoption of the Z80 when considering it brain-powered the following systems:
Commodore 128 (includes both a Zilog Z80A & MOS 8602)
NEC PC-6001 / mkII / mkIISR (using NEC’s μPD780C – a Z80 compatible CPU)
NEC PC-8000 series
NEC PC-8801 (a wide range of models manufactured between 1981 – 1989)
MSX 2 / 2+ / turboR
Sharp MZ-80K series / MZ-80B series / MZ-3500 series
Sharp X1 / X1 turbo / X1 turbo Z / X1 twin
Sega SG-1000 / SG-1000 II / SC-3000 / Mark III / Master System
Sega Game Gear
Sega Mega Drive / Genesis (includes both a Motorola 68000 & Zilog Z80)
SNK Neo Geo (includes both a Motorola 68000 & Zilog Z80)
SNK Neo Geo Pocket / Color (includes both a TOSHIBA TLCS-900H & Z80)
Nintendo Game Boy / Color (Sharp LR35902 – a custom Z80 CPU)
The above list is only a small segment of computer and console systems that the trusty Z80 found itself in. Arcade manufacturers in particular, truly took advantage of this versatile processor in numerous ways. Initially arcade boards would only be designed with a singular Z80 CPU in place. But as games were becoming more complex, some added processing grunt was required. Since the Z80 was affordable and developers already accustomed to coding games for it, a very common solution was to add a secondary Z80 to increase the board’s horsepower.
SNK (Shin Nihon Kikaku Corporation) were always partial to manufacturing some fantastically exotic boards. During the mid-80’s they came up with the SNK Triple Z80 arcade board, and as the name suggests – boasts three Zilog Z80’s working in tandem. Two Z80’s were allocated to handle main CPU duties, while the third was specifically for sound CPU tasks. The games that ran on this board naturally surpassed the audio and visual fidelity of many of it’s counterparts. Resulting in games that had a look, feel and sound closer to the 16-bit standard.
My personal experiences with the Z80 were both positive and enjoyable, owning a ZX Spectrum played a big part in this. I learned to program on it, firstly in BASIC and then later on in machine code – wasn’t easy but I got the nitty-gritty. Later on I got hold of Zeus Assembler which made programming in assembly far more palatable to machine code.
Generally it didn’t take long to get accustomed to how the accumulator and various registers within the Z80 work together. The architecture is simple and elegant enough, not hard to figure out why it was so readily adopted. Not bad for a microprocessor that was originally intended for cash registers, instead of computers, consoles and arcade machines.