Advice on the sweet setup for programming on the Speccy.

Struggling with Fuse or trying to find an emulator with a specific feature. Ask your questions here.
Post Reply
KayBee
Drutt
Posts: 17
Joined: Thu May 31, 2018 3:14 pm

Advice on the sweet setup for programming on the Speccy.

Post by KayBee »

Good Day Speccers,

I value your expert advice.

I am finally going to start the journey of writing a simple game. Spectrums are more rare than Unicorns here in the US so I am limited to using an emulator. I will prototype it in White Lightning or LASER basic (purchased from Japsters Cavern), so I need to be able to use an emulator that lets me save my work conveniently. White Lightning seems tape-centric and LASER basic mentions Microdrives being useful. What emulator would you use that lets me use both?

PS. this was an easy issue on the TS1000 since I own one and a ZXpand was the key to easy file management.

Thank you.

KB
llewelyn
Manic Miner
Posts: 205
Joined: Thu Feb 22, 2018 3:27 pm
Location: virginias eastern shore
Contact:

Re: Advice on the sweet setup for programming on the Speccy.

Post by llewelyn »

Why don't you use the Basic the emulator comes with which I assume is Sinclair Basic unless you are using an emulator that has an odd setting? I use Fuse and if the single key stroke commands is off putting, switch to 128k model with 128 Basic.

You say 'a simple game' but from the remarks I get the impression you are probably ahead of me! I save and load snapshots, makes life easier though it does occasionally cause strange screw ups. I'm in the USA too BTW and sure Speccies are like hens teeth but TS2068's are available - I had one - and in my opinion its much better than the 48k Speccy anyway.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: Advice on the sweet setup for programming on the Speccy.

Post by Einar Saukas »

I suggest using Boriel ZX BASIC instead. It's the best, easiest and most efficient BASIC alternative for the Speccy:

http://www.boriel.com/wiki/en/index.php/ZXBasic

It's a cross platform compiler, which means you write your program in a PC using whatever text editor you like. Also you can prepare a simple BAT file and associate it with a function key in your editor, so a single keypress will compile your program and launch an emulator running it, in under a second. You can find examples of these BAT files in the source code of my programs, for instance:

https://spectrumcomputing.co.uk/index.p ... 6&id=30157

Another advantage of Boriel ZX BASIC is that it has a very active forum, where people are very helpful:

http://www.boriel.com/forum/zx-basic-compiler/

Good luck!
User avatar
PeterJ
Site Admin
Posts: 6855
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Advice on the sweet setup for programming on the Speccy.

Post by PeterJ »

I agree with [mention]llewelyn[/mention], start off with Sinclair BASIC. Once you have mastered that you can move on.
namco
Manic Miner
Posts: 247
Joined: Mon Dec 04, 2017 8:55 pm

Re: Advice on the sweet setup for programming on the Speccy.

Post by namco »

Why don't you use the Basic the emulator comes with which I assume is Sinclair Basic unless you are using an emulator that has an odd setting? I use Fuse and if the single key stroke commands is off putting, switch to 128k model with 128 Basic.
Unless I'm mistaken, the only issue with this is that it won't be compatible with 48k - unless there is some hack to get it running in 48k mode?
User avatar
djnzx48
Manic Miner
Posts: 729
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Advice on the sweet setup for programming on the Speccy.

Post by djnzx48 »

If you want to be able to save stuff easily, why not just use emulator snapshots? Then there's no mucking around with extra files and you can just load/save it instantly.
AndyC
Dynamite Dan
Posts: 1388
Joined: Mon Nov 13, 2017 5:12 am

Re: Advice on the sweet setup for programming on the Speccy.

Post by AndyC »

namco wrote: Thu May 31, 2018 9:15 pm
Why don't you use the Basic the emulator comes with which I assume is Sinclair Basic unless you are using an emulator that has an odd setting? I use Fuse and if the single key stroke commands is off putting, switch to 128k model with 128 Basic.
Unless I'm mistaken, the only issue with this is that it won't be compatible with 48k - unless there is some hack to get it running in 48k mode?
As long as your program doesn't use the SPECTRUM or PLAY keywords or the Ram Disk, it'll load and run fine on a 48K.
namco
Manic Miner
Posts: 247
Joined: Mon Dec 04, 2017 8:55 pm

Re: Advice on the sweet setup for programming on the Speccy.

Post by namco »

AndyC wrote: Fri Jun 01, 2018 12:08 am As long as your program doesn't use the SPECTRUM or PLAY keywords or the Ram Disk, it'll load and run fine on a 48K.
AFAIK my game, Brexit: The Final Countdown, didn't use those keywords or the Ram and you can't advance past the first screen. Also the background is yellow instead of white!
dfzx
Manic Miner
Posts: 673
Joined: Mon Nov 13, 2017 6:55 pm
Location: New Forest, UK
Contact:

Re: Advice on the sweet setup for programming on the Speccy.

Post by dfzx »

KayBee wrote: Thu May 31, 2018 3:27 pm I will prototype it in White Lightning or LASER basic (purchased from Japsters Cavern)...
If you want to prototype on the Spectrum itself with a Spectrum development program you'd be best off not worrying about tapes and microdrives and just use snapshots instead. That is, you do some work and instead of doing a save-to-tape in the Spectrum program you just hit 'Save snapshot' in the emulator. It happens instantly, and you can build up a collection of snapshots which you can revisit as required.

I vaguely remember some White Lightning development from years ago, and I seem to recall you have to do some sort of export to have it create your runnable game (as opposed to a "state" within the White Lightning editor, which is what the snapshots will save). That export will still have to be done to "tape".

I use the FUSE emulator which will do what you want. You're only asking for straightforward emulation of a Spectrum, so I suspect any emulator will do the job.
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
Ralf
Rick Dangerous
Posts: 2279
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Advice on the sweet setup for programming on the Speccy.

Post by Ralf »

I believed nobody asked it so far... So my question is - is there any reason that you wanted to use some extended version of Basic like Laser Basic and not standard built-in Basic?

My private opinion is that these extended versions existing in the 80s didn't give you much more than standard one and there was much nuissance with loading and saving your programs.
dfzx
Manic Miner
Posts: 673
Joined: Mon Nov 13, 2017 6:55 pm
Location: New Forest, UK
Contact:

Re: Advice on the sweet setup for programming on the Speccy.

Post by dfzx »

Ralf wrote: Fri Jun 01, 2018 11:09 am My private opinion is that these extended versions existing in the 80s didn't give you much more than standard one and there was much nuissance with loading and saving your programs.
Bit harsh, Ralf. :)

White Lightning was Forth based, and from what I recall it did funky things (presumably with interrupts) to get all sorts of nice concurrent sprite effects. It had sprite designer and sound designer software, plus some game design stuff too.

I never saw Laser BASIC, but the review in Crash (http://www.crashonline.org.uk/25/basics.htm) says "You can do all sorts of tricks if you can remember the right command — moving, scrolling, panning, recolouring, masking, rotating, animating, enlarging, shrinking, inverting and detecting collisions — in other words, you can fiddle about with patterns on the screen in almost every conceivable way."

If you're after a genuine retro games creation experience I'd say these sorts of packages bring quite a bit to the table.
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
hikoki
Manic Miner
Posts: 576
Joined: Thu Nov 16, 2017 10:54 am

Re: Advice on the sweet setup for programming on the Speccy.

Post by hikoki »

For Sinclair Basic, BasinC:http://arda.kisafilm.org/blog/?page_id=848&lang=en plus CharAde:http://www.railtron.com/files/spectrum/
A next move can be Boriel Basic: zxbasic.net which lets you play with asm snippets
BTW [mention]Joefish[/mention] would it be too much work to make CharAde compatible with Boriel Basic ?

I didn't know about these old Basic extensions like Laser Basic.
What about Logo? There are a number of articles on Home Computer magazine.
Ralf
Rick Dangerous
Posts: 2279
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Advice on the sweet setup for programming on the Speccy.

Post by Ralf »

Bit harsh, Ralf.
Maybe ;)
The problem is that I have never seen a good game written with these Basic dialects. Actually I haven't seen much games at all written with them, don't believe any of them really caught on.

But I've seen the infamous SQIJ ;) and if you don't know it, it's written in some kind of extended Basic. You can enter into Basic from it just by pressing Break. It's a very, very bad advertisment for the tool used to create it.
dfzx
Manic Miner
Posts: 673
Joined: Mon Nov 13, 2017 6:55 pm
Location: New Forest, UK
Contact:

Re: Advice on the sweet setup for programming on the Speccy.

Post by dfzx »

Ralf wrote: Fri Jun 01, 2018 4:30 pm The problem is that I have never seen a good game written with these Basic dialects. Actually I haven't seen much games at all written with them, don't believe any of them really caught on.
The thing about those extended BASICs, at least for me, is that they extended what the Spectrum's native BASIC did: teach me programming. I learnt the native BASIC, then when I'd exhausted the learning potential of that, along came Beta BASIC. I played with that a while, then looked at the Forth of White Lightning, then moved onto another BASIC dialect - I forget what it was, but IIRC it came with a magazine and had some sort of native sprite control. After that I was ready for assembly language.

I didn't actually write anything concrete with any of them, and certainly not a completed game, but that's not the point. The point is that they continued my education, providing more incrementally sophisticated platforms to learn about techniques and data structures and all the rest of it, much more so than native BASIC ever would have been able to. It's all history now, and there's probably no need to learn any of them in the modern era given all the good alternatives to hand now, but that was my personal journey.

Hence my soft spot for them. :)
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
KayBee
Drutt
Posts: 17
Joined: Thu May 31, 2018 3:14 pm

Re: Advice on the sweet setup for programming on the Speccy.

Post by KayBee »

Thank you all for your replies. I am drawn to these extended basics because I like the enhancements they provide, over the standard basic. If I had been in the UK in the early 80's I would have had a Spectrum, and I would have wanted to make a cool game. Knowing me, I would have tried these dialects back then because the advertising for them showed what amazing things were possible. I will try FUSE, and I also like the emulation snapshot idea. My end goal is indeed to have my game on a cassette.

Starting with the right emulator could save me from frustration, so I appreciate the advice.

Thanks again.

KB
User avatar
Joefish
Rick Dangerous
Posts: 2041
Joined: Tue Nov 14, 2017 10:26 am

Re: Advice on the sweet setup for programming on the Speccy.

Post by Joefish »

hikoki wrote: Fri Jun 01, 2018 1:20 pm For Sinclair Basic, BasinC:http://arda.kisafilm.org/blog/?page_id=848&lang=en plus CharAde:http://www.railtron.com/files/spectrum/
A next move can be Boriel Basic: zxbasic.net which lets you play with asm snippets
BTW @Joefish would it be too much work to make CharAde compatible with Boriel Basic ?
Interesting thought. I did want to revisit CharAde as I think the command list was getting a bit out of hand. I guess you could add it to Boriel. Maybe with an extra command to pass data to the CharAde interpreter rather than diverting LPRINT. Although it seems a bit inefficient to me; in a new BASIC it'd be better to access the graphical functions directly with new commands, rather than have to edit them into strings and then offer the string up for processing.

I also had the idea of a sort of 'CharAde Lite' that was just for drawing a larger number of UDGs faster. I think all the scrolling features of CharAde made it daunting for a beginner, so something that could just handle a few banks of coloured UDGs and a simple back-buffered static 32x16 screen. This sort of grew out of the idea of a Game&Watch engine, which also sits around unfinished.
User avatar
Joefish
Rick Dangerous
Posts: 2041
Joined: Tue Nov 14, 2017 10:26 am

Re: Advice on the sweet setup for programming on the Speccy.

Post by Joefish »

My advice, and this is from experience, is not to touch White Lightning, as trying to program anything in Forth will drive you mad.

Laser Basic has all the same features. But I genuinely think my CharAde engine is better and more attuned to games. Laser Basic lets you do things like pixel scroll multiple windows of the screen in different directions, which is just not going to work practically in any sort of game you can write with it. I based CharAde around character-square sprites and movement, and wrote it with emulators in mind. Indeed, the graphics editor is only really any good with (a) a mouse and (b) emulation running at 4x normal speed!

The problem with any extended BASIC though is you're still stuck with the core of your game running in BASIC, which is slow, so you really have to allow for that in your game design. The better design tools like BASINC, AGD, Boriel's ZX Basic, the PASMO assembler etc. all run on a PC to generate files to use in an emulator, which is a much more comfortable way of working. (Though you can use CharAde with BASIN and BASINC; it's how I wrote the graphics editor. But as you observe, there's still a bit of file-type juggling).

The most important thing to do when developing in an emulator is turn off 'auto file loading', so that when you insert a virtual tape for saving it doesn't reset the emulation and lose all your work!
Magnus
Dizzy
Posts: 61
Joined: Sat Jan 06, 2018 6:47 am
Location: Sweden

Re: Advice on the sweet setup for programming on the Speccy.

Post by Magnus »

Joefish wrote: Wed Jun 13, 2018 12:15 pm My advice, and this is from experience, is not to touch White Lightning, as trying to program anything in Forth will drive you mad.
I have the same experience :lol:. White Lightning seemed so promising. I remember watching the demos, thinking that now I'll finally be able to write that elusive blockbuster game. Never managed much more than moving a sprite around the screen :oops:. I wonder if any games were actually produced with this tool...
My ZX Spectrum emulator project: https://softspectrum48.weebly.com.
Post Reply