Showing posts with label plus4. Show all posts
Showing posts with label plus4. Show all posts

Saturday, 23 September 2023

Lancess Priya plus/4

I found some time to convert the Lancess Priya game to Commodore plus/4, the underappreciated little brother of Commodore 64. I formally demo'd the plus/4 version at the Skrolli magazine demoparty at 23th September 2023, and the game is now available at plus4world.

Lancess C64 made extensive use of sprites to generate the dashboard and fireball graphics, so all this had to be made to work in the pseudo-pixel character graphics.

But this was not a great problem, some of the font elements could even look nicer when they are more chunky. I already experimented with it on the C64 version before deciding on the sprite approach. This also simplified the interrupt a little, as there's no need to multiplex sprites.

The fireballs (enemy shots) were the toughest, as these needed to be drawn differently. I believe the added speed of the plus/4 made it possible to draw them without noticeable slowdown. The graphics also use less space than the sprites, which although not necessary, made handling memory issues easier.

The fireballs, taken together with the sights also means the gameplay area is quite monochromatic. The sights cannot be moved in every frame like in the C64 version, but I felt this wasn't a problem. I added some color to the texts, to take at least some advantage of the platform qualities.

TED sound is much simpler than SID, so it didn't take long to have some sound fx and some abysmal ditties playing here and there. I didn't set the bar very high though! I ignored the SIDCart route this time as the C64 version soundscape was quite simple to begin with.

I took the opportunity to fix a few glitches and bugs found from the C64 version, these may be eventually released as a C64 v. 1.1.

-You could ambiguously "fly over" the towers, which wasn't very apparent if you fly closer to the ground. It made it look you could just pass through everything, but this was not the intention. The towers are clamped a little awkwardly to the bottom of the screen to prevent them from disappearing.

-The "deathstar" graphic in the space battle would wrap around in a rather silly way. I just couldn't be bothered for the initial release. I now made the wrap-around at least a little less conspicuous for this non-moon.

Lancess Priya at plus4world

Tuesday, 26 April 2016

Commodore Plus/4


Thought I'd say a little about Commodore Plus/4 now that I'm a bit more familiar with it. When I got this computer I expected to feel the kind of enjoyment when exploring Panasonic JR-200. I can't explain why. Neither can I explain why it didn't turn out that way. It's still an interesting computer, though.

Compared to how well-known C64 and VIC-20 are, Plus/4 can be called fairly obscure. At least I never saw a physical Plus/4 in Finland back in the day.

Instead of going upward from C64, Commodore decided to go a bit sideways and somewhat back with this computer. From a manufacture perspective, the C64 was perhaps a bit troubled with having so many of those glorious chips, so creating simpler hardware seemed attractive.  Goodbye VIC and SID, the TED chip takes care of it all.

The Plus/4 has more than 60k available for BASIC programming, accessible graphics modes and built-in software packages. Outwardly there is something of the 'spectrum' in it, what with the black plastic case and polygonal shapings. Even the boot-up screen seems like a concession towards Sinclair sensibilities: a grayish white background.

Left: The BASIC listing. Right: the output. Note the split graphic/text mode.
The BASIC has more features than before, though I'd say in user-friendliness it's not equal to Sinclair BASIC or the MSX implementation of Microsoft basic. Neither is it as versatile as the QL SuperBASIC or Amstrad BASIC.

GRAPHIC 2 gives the bitmap mode and GRAPHIC 0 gives back the text mode. Cleverly, using commands like INPUT in middle of GRAPHIC 2 gives a split-screen bitmap/text mode. Lines, rectangles, circles, flood fills etc., all of course are very slow. For once, there is a command for clearing the screen: SCNCLR.

Fortunately the computer has a typewriter keyboard, even though the uniquely styled cursor keys have been only half-thought out.  Surprisingly, my keyboard does not work as well as thirty-year old C64 keyboards, even if I suspect it has not been used that much.

The built-in text editor.

Commodore floppy drives and SD2IEC work with Plus/4, so it's possible to access the software catalog or do at least something meaningful with the computer. The new type joystick connector is simply silly.

Graphics are nominally better than in the Commodore 64, but the resolutions and text modes are pretty same as in the C64. The usual PETSCII text graphics are in effect, which is a good thing. An 80-column mode might have been welcome but nothing outside of a monitor would have displayed it in a satisfactory manner anyway. 121 colors sounds a lot but the palette is dominated with pastels.

The color palette appears a bit suspect when shown in its totality, but people have made some amazing pictures with it. The trick I suppose is not to try to modulate the colors with the luminosities directly (like below) but find smooth gradients by using different parts around the whole palette.


The built-in software is a waste of potential. One would imagine that a character display-based text editor would be fast and responsive, but here the implementation is slow. The rest of the package is more like extended support features for the text editor rather than proper software.

One good feature is the built-in machine code monitor, accessed by typing MONITOR in Basic. A monitor is very helpful for at least educating the programmer. Perhaps a full-blown assembler instead of the 3-in-1 package might have made the computer even more interesting. Sadly, without the added boost of the C64 chips the processor is left to do everything and compared to the Z80 the 6502 is not quite up to the task.

Cross-developing for the Plus/4 is pretty similar to C64, simply use cl65 and -t plus4 as parameters.

The following activates the hi-res bitmap mode and sets it to start from $4000 onwards.

LDA #$20
STA $83
LDA $FF12
ORA #$10
STA $FF12
RTS

Colormap starts at $1C00 and luminosity from $1800, both $400 long. Border is at $FF19.


With the Plus/4, Commodore introduced a new line of computers that were not meant to be any more compatible with the C64 than the C64 was compatible with the VIC-20. It was maybe hampered by a public perception that whatever Commodore made ought to be a continuation of the C64 thinking. Later days have shown the Plus/4 to be a quite capable and robust little 8-bitter.

Plus/4 World

Plus/4 at Wikipedia