ZX SPECTRUM NEXThttp://www.specnext.com
The official portal for all things NextWed, 23 May 2018 21:07:23 +0000en-UShourly1https://wordpress.org/?v=4.7.10http://www.specnext.com/wp-content/uploads/2017/04/cropped-icon_512x512_B-32x32.pngZX SPECTRUM NEXThttp://www.specnext.com
3232Lyndon Sharp, WASP and Pogie!http://www.specnext.com/lyndon-sharp-wasp-and-pogie/
Wed, 23 May 2018 18:39:43 +0000http://www.specnext.com/?p=963To continue the tradition of bringing news of games in development for the Next, we asked Lyndon Sharp about his industry background, and how he finds the Next.

I got into the industry not by writing games, but Spectrum and Amstrad music for Codemasters. The 1-bit beeper engine I wrote was inspired by Wham! the Music Box / Fairlight. I used to compose music on Wham and then had a tool that would run the music back so I could add drum data.

The drum data was just random ROM data. When I heard something that sounded like a drum I’d store it off. The 128K AY music was done on an Amiga. I used Noise Tracker 2 to compose the music and then ran the MOD’s through a custom tool to convert them into much smaller Spectrum AY files. I’d then compose the voice data and drums inside the driver.

I would then transpose the channels into something that suited the Spectrum octave range. Sometimes it worked well, sometimes not so well.

Tim Miller or Mark Boldock (Producers) would come to me in my portacabin and ask for tunes for up and coming titles that were in the pipeline and I’d knock something up for them. That was the arrangement until Philip Oliver came to me with the Kwik Snax idea (Fast Food 2) which we fleshed out into a full product.

Chris Graham shared this portacabin with me and was my artist (although not exclusively, Chris worked on many products). It was here were we came up with the concept of the Dizzy Mob and the storyboard. I wrote the music and integrated Chris’s animation into the music driver.

The Dizzy Mob introduction screen included an animated band and AY music

From then on I just fitted music in where I could whilst making games. 750cc Grand Prix started off as an Afterburner style game but Tim thought that a bike game was more saleable. Paris to Dakar, I’m not sure what that was, it wasn’t my idea. Ironically it was one of my favourite AY tunes. Bubble Dizzy, that was a nice tune, then came Captain Dynamo. Somewhere in amongst that lot, Crash made me an offer on Zanthrax for one of their cover tapes.

I then went to work for the Oliver Twins where I did Robin Hood – Legend Quest, which was a conversion of the NES game. The music was a conversion of the NES original. Paul Griffiths and I then did the Game Gear and Master System version of Fantastic Dizzy and again I converted the NES music to the Sega 8-bit.

I then went to work for Attention to Detail (ATD) and from that point I never made music again, I was just a game coder and worked on The Incredible Hulk – Pantheon Saga, Rollcage, Rollcage Stage II, Lego Racers and Lego Drome Racers. I then went to work in motorsport (engine management, looms and calibration maps) and I now work as a Senior Programmer at Games Warehouse Ltd, writing gambling software.

In the evenings, I’m also part of the resurrection of WASP which is myself, Phoebus Dokos, Lampros Potamianos and Allister Brimble. We are working on many things but our main task is getting Dreamworld Pogie developed for the Next as a launch title.

We Are Spectrum Programmers seemed quite appropriate

Dreamworld Pogie features pretty much every Next enhancement available and some very clever tricks which really push the platform

On the subject of the Next, Lyndon says that it is fun to code for and has lots of features and believes it is a worthy successor to the original. “It is just as difficult to extract impressive high performance games out of it. Nothing worth doing is easy and the Next is an ideal machine as it works my brain.”

Many of you will have seen the demonstrations of Pogie on Youtube. The graphics, colours, scrolling and digital audio. This is another example of developers extending the limits of what the Next could do. It goes to show that ideas are taken on board where possible, and the Next becomes a greater machine because of it.

The digital audio in Pogie only became possible in this manner. As Lyndon explains.

At the start I had to pester, beg, annoy Garry Lancaster to implement a streaming system which he has done an absolutely marvellous job on. I used a similar approach on Victor for him to increase the copper list size and also add sound drive as a register mirror so that the copper could write to it.

I wrote a PC tool to strip and encode the sample data from WAV format (covering both old and new WAV formats), then once you have a file (a .CPA extension in this case you are ready to code.

How it works.

Configure and preload the sample buffer and preinject sample data into the Z80 side and DMA it to the copper list real

Kick off the copper on the first frame data

Stream 512 bytes into the sample buffer

Using raster interrupts, wait for scan line x and begin sample injection of the next frame

Using port DMA write the entire Z80 side copper list to the copper list real so it completes as the copper reads the last instruction

Repeat from 3 until all sample data has been exhausted, then either loop or stop

Quite simple really but this uses DMA, raster interrupts, copper, SD streaming, sound drive and of course very efficient T state optimised Z80 code running at 14MHz. This is why it can work in game at 60Hz.

This screenshot demonstrates slices of processing taking place for different aspects of the game. The black border section is effectively showing how much additional resource is available.

Although lamenting the loss of some features mentioned in the early days, 28MHz mode, SID and FM audio, and struggles with the constant changes to the Next specification, Lyndon remains engaged and says “I would change nothing, as it makes it harder and more enjoyable when you pull off the impossible”.

Whilst there has been discussion around digital sound and wav file playback being an easy way out, this clearly demonstrates that there are still challenges and limitations to be faced in this area. To us the original Spectrum was a device which was tamed into the games machine that many of us grew up with. Each generation of software getting cleverer right up to the present day. I’m sure there is plenty of untapped potential also within the Next, and ways to achieve things on this platform which are yet to be explored.

And in other related news…

Thalamus is in discussion with WASP about bringing some of their classic titles to the Spectrum Next platform!

]]>Remembering Rick Dickinsonhttp://www.specnext.com/remembering-rick-dickinson/
Thu, 03 May 2018 09:57:16 +0000http://www.specnext.com/?p=958The entire community was rocked by the extremely sad news that Rick Dickinson, designer of the Spectrum Next and the many Sinclair products we know and love has passed away.

Rick’s family have opened up a condolences page at his design web site which you can access here.

Please do drop by and add your own memories, experiences and thoughts of Rick. Photographs are welcome too.

His family have also set up a student fund in his memory at the very place where he learned and honed his craft. There is a link on the condolence page where you can provide a donation to this fund if you wish to.

We are left with the task of delivering Rick’s latest and last work. It is an even larger responsibility now as we each feel this needs to exceed perfection. It has to stand up against his much loved and respected prior works and be counted in amongst his greatest designs.

]]>KICKSTARTER UPDATE 27 GOES LIVE!http://www.specnext.com/kickstarter-update-27-goes-live/
Sun, 15 Apr 2018 14:43:35 +0000http://www.specnext.com/?p=952A new Kickstarter update as promised, more to follow soon. See it here.
]]>Kickstarter update 26 goes live!http://www.specnext.com/kickstarter-update-26-goes-live/
Mon, 02 Apr 2018 18:11:32 +0000http://www.specnext.com/?p=948For the latest and greatest on the project, head on over to Kickstarter.
]]>Team Rusty Pixel presents the ScrollNutter demo!http://www.specnext.com/team-rusty-pixel-presents-the-scrollnutter-demo/
Mon, 02 Apr 2018 18:02:15 +0000http://www.specnext.com/?p=944ScrollNutter is a new open source scroll demo including comments, for people to have a play with for the Next, and hopefully inspire people to make other things from it, or help them to create games or even just help you to learn how to program.

P.S. as always you don’t need a Next to try this out as it has CSpect and assembler included for PC emulation.

]]>No Mercyhttp://www.specnext.com/no-mercy/
Fri, 16 Mar 2018 22:38:39 +0000http://www.specnext.com/?p=934Since its announcement back in May 2017, No Fate has undergone concept changes which have also resulted in a new name. From the team who created Castlevania: Spectral Interlude comes No Mercy. Taking full advantage of the Next’s graphics capabilities, this is going to be one to watch out for.

In their words…

He has been betrayed. Left bleeding to death in a ravine filled with dead bodies. He lost everything, but he regained his freedom. Many paths now lie before the wounded hero. Should he take revenge on his traitors? Should he search for allies? Maybe he can try to conquer the world? From now on, he’s not bound by the past — but his choices will change his future.

Here’s the latest SD image with everything you need to get your Next updated and running!

OBLIGATORY DISCLAIMER: READ THIS POST IN ITS ENTIRETY BEFORE ASKING FOR HELP

In the links below you will find TBBLUE v.0.8b-rev.A SD card distribution containing the following changes over version 0.8b:

System Software

New Firmware file 1.06 which fixed a config.ini corruption issue occuring for config.ini files that were larger than 512 bytes. Garry Lancaster identified, fixed and built this; big thumbs up for the quick investigation. This Firmware file has support for multiple cores built in, so you’re built for the future of Next already!

UpdatedNextOS 1.97din two versions: one with Geoff Wearmouth’s Gosh Wonderful 1.33 48K ROM (Default) which is now FULLY compatible with games utilizing the Nirvana/Nirvana+ Engines and one with the standard 48K ROM Also additional fixes in loading of several games which were previously incompatible with even original 128K machines. Minor fixes as listed in the c:/docs/ folder

Starting with this release, there’s also a folder named c:/sources/ in which we will place all source code pertaining to software provided with your Next or to ease your development lifecycle.
Also from this release due to popular demand, the archive of the distribution will be in both zip and 7z formats.

Installation

Prepare the card as per the instructions here. Firmware file will be replaced.

********WARNING*********

USERS OF FlashAir CARDS are advised to perform ALL file copy operations locally on their PC/MAC and NOT over the air.

*******IMPORTANT NOTES**********

If your current firmware is older than 1.10.10 you may experience issues with your keyboard and/or display. Please follow the expanded instructions in the previous versions of the TBBLUE distributions and the Quick Start guide here to flash your core or the quick instructions on step #2 below. (Try the instructions below first and if you get stuck check the previous versions)

Default config.ini settings assume an HDMI monitor. If you’re using a VGA monitor you should delete your config.ini file located in c:/tbblue/ and replace it with the config.ini.VGA file (also located there) renamed to config.ini. YOU ARE STRONGLY ADVISED TO EXPERIMENT WITH DIFFERENT DISPLAY SETTINGS (Display modes 0 to 6 that is) TO ACHIEVE THE BEST RESULTS FOR YOUR DISPLAY AS THE DEFAULT CHOSEN (HDMI) ALTERS THE TIMINGS SLIGHTLY AND CERTAIN –OLDER– PROGRAMS MAY NOT DISPLAY PROPERLY (especially certain Demos). VGA modes (Settings 0…6) ARE timing accurate although the user may experience faster execution as each setting with the exception of 0 makes things faster (but keeping timings relative)

Flashing the new core

1. For people with functioning keyboards after boot and/or membranes (but which also have PS/2 keyboards)

Let the machine boot normally, then press and hold U on your PS/2 keyboard, then tap momentarily on F1 (still holding U) and release U when you see the updater module. Press Y, wait until all flashing is completed, then power down the Next and REMOVE ALL CABLES. Wait a little and then plug everything back up again. If you have a VGA you need to replace your config.ini (see above) or edit it and set the second number after the machine type to 0. If you’re in Brazil, Japan, the USA or Canada or any country that uses normally an NTSC TV signal (or a PAL 60 signal), chances are your monitor only supports 60Hz, so go ahead and tap F3 now -or alternatively you can change the [50_60] setting to 1 from config.ini or by editing the settings at boot time with the EDITOR module (Press SPACEBAR when prompted on boot then press E to edit your settings)

2. For people with Perixx PS/2 keyboards and/or keyboards with a similar controller on board AND people with membranes that are not functioning or having trouble entering the UPDATER module.

Enter AntiBrick (AB) mode by removing all cables (including HDMI), pressing and holding M1 and Drive (simulaneously), then reapplying power (no HDMI or VGA yet) waiting a few seconds (2-3) and releasing the keys, then reconnecting the display lead that worked for you previously. Press Y for update. If Ycannot be pressed then the press M1 button for Y or Drive button for N

]]>New PS/2 US Keymaphttp://www.specnext.com/new-ps2-us-keymap/
Fri, 02 Mar 2018 16:07:45 +0000http://www.specnext.com/?p=920Today, I’ve released a public beta of a new -US- keymap file that changes a number of things in the way your PS/2 keyboard works. To use, place in your c:/tbblue/ folder and replace the existing keymap.bin

NOTE 1: ALWAYS backup your files when replacing a working copy with a beta file!!! You have been warned!

NOTE 2: It’s possible you turn your ZX Spectrum Next crazy when you press the modifier with an already modified key twice. So for example Shift + PgUp may hang the keyboard!!!!

NOTE: This is the LAST release compatible with Firmware versions 1.04e and 1.04f. Starting with the next version, Multicore support has been added accessible via OUT commands which will require a different Firmware file)

NewNextOS 1.97cin two versions: one with Geoff Wearmouth’s Gosh Wonderful 1.33 48K ROM (Default) which is now FULLY compatible with games utilizing the Nirvana/Nirvana+ Engines and one with the standard 48K ROM Also additional fixes in loading of several games which were previously incompatible with even original 128K machines. Changes include improved boot up speed, fixed bugs, code cleanup and extensive use of NextReg and Z80N extended opcodes. This version has also several new commands DEFPROC…ENDPROC, LOCAL and MOD instead of %, DRIVER for installable Interrupt driven drivers (such as the mouse driver), full support for 3 AYs via the PLAY command and has reorganized commands that return values into variables to all use the COMMAND…TO….variable syntax.

Starting with this release, there’s also a folder named c:/sources/ in which we will place all source code pertaining to software provided with your Next or to ease your development lifecycle.
Also from this release due to popular demand, the archive of the distribution will be in both zip and 7z formats.

Installation

Prepare the card as per the instructions here. Firmware file will be replaced.

********WARNING*********

USERS OF FlashAir CARDS are advised to perform ALL file copy operations locally on their PC/MAC and NOT over the air.

*******IMPORTANT NOTES**********

If your current firmware is older than 1.10.10 you may experience issues with your keyboard and/or display. Please follow the expanded instructions in the previous versions of the TBBLUE distributions and the Quick Start guide here to flash your core or the quick instructions on step #2 below. (Try the instructions below first and if you get stuck check the previous versions)

Default config.ini settings assume an HDMI monitor. If you’re using a VGA monitor you should delete your config.ini file located in c:/tbblue/ and replace it with the config.ini.VGA file (also located there) renamed to config.ini. YOU ARE STRONGLY ADVISED TO EXPERIMENT WITH DIFFERENT DISPLAY SETTINGS (Display modes 0 to 6 that is) TO ACHIEVE THE BEST RESULTS FOR YOUR DISPLAY AS THE DEFAULT CHOSEN (HDMI) ALTERS THE TIMINGS SLIGHTLY AND CERTAIN –OLDER– PROGRAMS MAY NOT DISPLAY PROPERLY (especially certain Demos). VGA modes (Settings 0…6) ARE timing accurate although the user may experience faster execution as each setting with the exception of 0 makes things faster (but keeping timings relative)

Flashing the new core

1. For people with functioning keyboards after boot and/or membranes (but which also have PS/2 keyboards)

Let the machine boot normally, then press and hold U on your PS/2 keyboard, then tap momentarily on F1 (still holding U) and release U when you see the updater module. Press Y, wait until all flashing is completed, then power down the Next and REMOVE ALL CABLES. Wait a little and then plug everything back up again. If you have a VGA you need to replace your config.ini (see above) or edit it and set the second number after the machine type to 0. If you’re in Brazil, Japan, the USA or Canada or any country that uses normally an NTSC TV signal (or a PAL 60 signal), chances are your monitor only supports 60Hz, so go ahead and tap F3 now -or alternatively you can change the [50_60] setting to 1 from config.ini or by editing the settings at boot time with the EDITOR module (Press SPACEBAR when prompted on boot then press E to edit your settings)

2. For people with Perixx PS/2 keyboards and/or keyboards with a similar controller on board AND people with membranes that are not functioning or having trouble entering the UPDATER module.

Enter AntiBrick (AB) mode by removing all cables (including HDMI), pressing and holding M1 and Drive (simulaneously), then reapplying power (no HDMI or VGA yet) waiting a few seconds (2-3) and releasing the keys, then reconnecting the display lead that worked for you previously. Press Y for update. If Ycannot be pressed then the press M1 button for Y or Drive button for N

]]>Dungeonettehttp://www.specnext.com/dungeonette/
Mon, 12 Feb 2018 09:46:53 +0000http://www.specnext.com/?p=871Dungeonette is a dungeon crawler with a nod to the past of now legendary Spectrum games, but with a new twist for Spectrum Next.

You play a brave hero on a quest to enter the dungeons of doom and slay the evil reaper that has cast darkness over the land.

With your trusty weapon, armour and shield you must navigate the maze of dungeons ahead and vanquish all your foes.

Collect as much gold treasure as possible on your quest and keep yourself from starving by finding sustenance.

Your journey ahead will not be an easy task as the reaper has sent out hordes of creepy monsters to stop you!