maandag 18 augustus 2025

Programmeren met de ZX Spectrum NEXT

 Wat gebruik ik bij het ontwikkelen van games voor de Next?

Voor degenen onder jullie die de ZX Spectrum Next hebben aangeschaft in de hoop er games voor te schrijven, of die gewoon genieten van de uitdaging van het schrijven van software, dit is wat ik gebruik:

Het eerste is de emulator (het is veel gemakkelijker om je game te ontwikkelen op een pc/Mac). Bijna alle ontwikkelaars gebruiken de gratis emulator CSPECT. Die kun je hier downloaden:

https://mdf200.itch.io/cspect

In Linux draait ditr programma redelijk goed met hulp van WINE

Ook ZeSarUx is een goed werkende emulator. Vanaf versie 11 heeft het ZX SPectrum Next ingebouwd. Het is wel lastig om nieuwe games aan de image waaruit het werkt toe te voegen.

https://github.com/chernandezba/zesarux

Als ik de game of het hulpprogramma schrijf met NextBASIC, schrijf ik de software het liefst op een pc. De handigste tool hiervoor is Visual Studio Code. Deze kun je gratis downloaden van Microsoft:

https://code.visualstudio.com/download

Deze is beschikbaar voor pc, Linux en Mac.

Het volgende wat je nodig hebt, is de NextBASIC-plug-in van REMY. Die kun je hier downloaden:

https://marketplace.visualstudio.com/items?itemName=remysharp.nextbasic

Er is zelfs een video die laat zien hoe je deze installeert. Je hebt waarschijnlijk een kopie van de handleiding voor de Next nodig, waarin wordt uitgelegd hoe je software schrijft met NextBASIC. 

Versie één is hier te downloaden: https://archive.org/details/zx_spectrum_next_manual

Maar let op een nieuwere versie is in de maak.

Je kunt natuurlijk software voor de Next schrijven met de Next-computer, maar het kan wat lastig zijn om de editor te gebruiken.

Voor meer 'geavanceerde games' gebruik ik Boriel ZXBASIC. Deze compileert zijn eigen versie van BASIC-code en draait veel sneller dan code die met NextBASIC is geproduceerd. Het is ook moeilijker te leren, maar het neemt je wel mee de diepte in van de Next. Het stelt je ook in staat om Assembler eenvoudig in je code te integreren.

Voor Boriel BASIC gebruik ik de volgende tools:

Voor het bewerken van code, het compileren en starten van de emulator gebruik ik Boriel ZXBASIC Studio:

https://github.com/boriel-basic/ZXBasicStudio

Dit wordt geleverd met een Lite-versie van een set programmeertools waarmee je games voor de Next kunt schrijven, bekend als NextLib. NextLib is onderdeel van de NextBuild-tools van David Saphier, die een uitgebreide interface bieden voor het schrijven van games voor Next.

Ik gebruik de volledige NextBuild-bibliotheek in de ZXBASIC Studio IDE, met daarnaast mijn eigen Assembly Code-modules.

Hoewel ik Visual Studio Code niet gebruik wanneer ik Boriel gebruik, is NextBuild volledig geïntegreerd in Visual Studio Code (kortweg VSCode).

Instructies voor het downloaden en gebruiken van Nextbuild vind je hier:

https://github.com/em00k/NextBuild

David is momenteel bezig de mogelijkheden van Nextbuild uit te breiden, het beter te integreren in VSCode en nieuwe functies aan te bieden, zoals een uitgebreid Help-systeem, Sprite Editor, Palette Editor en Sound Effects Editor. Wanneer dit beschikbaar is, zal ik hiernaar overstappen voor de ontwikkeling van Boriel. De nieuwste versie van Boriel ZXBASIC kun je hier downloaden:

https://www.boriel.com/pages/the-zx-basic-compiler.html

Dit zou je de tools moeten geven om code te schrijven op een pc of Mac en deze uit te voeren op de CSPECT-emulator, nog voordat je je KS3 Next hebt.

Je hebt ook tools nodig om sprites, gamemaps, geluidseffecten en muziek te maken.

Voor sprites en graphics heeft Paul Harthen een set hulpprogramma's voor Aseprite geschreven waarmee je eenvoudig sprites, map tiles en paletten voor de Next kunt maken.

Aseprite kan hier worden gedownload:

https://github.com/aseprite/aseprite

Paul heeft hier de volledige instructies en downloadmogelijkheden voor zijn sprite-tools:

https://github.com/spectrepaul/blog/tree/main/ZX%20Spectrum%20Next%20-%20Using%20Aseprite

Voor het maken van gamemaps heeft Paul ook een set tools ontwikkeld waarmee gebruikers gamemaps kunnen maken met het uitstekende programma TILED.

Tiled kan hier worden gedownload:

https://www.mapeditor.org/download.html

Pauls tools voor Tiled zijn hier te vinden:

https://github.com/spectrepaul/blog/tree/main/ZX%20Spectrum%20Next%20-%20Using%20Tiled

Voor geluidseffecten gebruik ik de AYFX-editor. Deze is hier beschikbaar:

GitHub - Threetwosevensixseven/ayfxedit-improved: AYFX Editor (verbeterd) https://share.google/u8a9NpdZe989aKYYa

Voor het maken van muziek kan Vortex Trakker worden gebruikt:

AY-3-8910, AY-3-8912, YM2149 Homepage 

https://share.google/MOy2nJZPkctmsFvKK

Ten slotte, als je Boriel gebruikt, zullen deze boeken erg nuttig zijn:

Dit is het Boriel BASIC-boek.

https://amzn.eu/d/gU5O08B

En voor meer diepgaande informatie kun je ook dit boek downloaden:

https://github.com/tomaz/zx-next-dev-guide

Nou, dat zou je voldoende moeten geven om te beginnen met het programmeren van games voor de Next. Ik heb gekeken naar Z88dk, dat C gebruikt om games voor de Next te programmeren. De resulterende gecompileerde code is echter aanzienlijk langzamer dan code die geschreven en gecompileerd is met Boriel. Voor de volledigheid en voor mensen die C al kennen:

Z88dk kan hier gedownload worden:

https://z88dk.org/site/download

Nuttige informatie over het instellen van Z88dk voor de Next vind je hier:

https://lemmings.info/setting-up-z88dk-on-the-zx-spectrum-next/

veel succes met het programmeren van de ZX Spectrum Next

Geen opmerkingen:

Een reactie posten

Opmerking: Alleen leden van deze blog kunnen een reactie posten.

Programmeren met de ZX Spectrum NEXT

 Wat gebruik ik bij het ontwikkelen van games voor de Next? Voor degenen onder jullie die de ZX Spectrum Next hebben aangeschaft in de hoop ...