What the QL has done for me...

Anything QL Software or Programming Related.
Post Reply
User avatar
TMD2003
Trump Card
Posts: 168
Joined: Sat Oct 10, 2020 12:18 pm

What the QL has done for me...

Post by TMD2003 »

Here's a screenshot I just made, on a computer that thinks it's a QL, but obviously isn't really.

Image

Despite the odd text size, It's just a Spectrum screenshot, isn't it? Isn't it? Clearly that's just a load of PLOT and DRAW statements that's done that, right?

Look a bit more closely at WINDOW #1, and more specifically the border... surely, that's three colours in one cell? And it's not Nirvana+ either, as that can only use 30 of the Spectrum's 32 columns at most. And Nirvana+ is so far above my level that there's no chance of me ever cracking it.

For anyone who hasn't already twigged it, the screenshot it from CSpect in Spectrum Next mode. That's the 256-colour LAYER 2, simulating the QL's four-colour monitor mode. I couldn't have done it in LAYER 1,2 with its 512-pixel-wide screen, as that's limited to two colours.

At the Crash Live event in November, the Next team were handing out copies of the Issue 1 Next manual, plus a few extra freebies, for those of us who backed the Issue 2 Kickstarter - which I did. Presumably, the manual is going to be updated for the Issue 2 machines - but for now, it makes excellent reading until the real machine arrives... whenever that is, and the schedule is still supposed to be late summer, early autumn.

I started reading the Next manual on 11th January 2023. And I noted down all the concepts that were new to me, and which I would have to practice.

There are fewer new concepts to me than there are for someone who's only ever used Spectrum BASIC - and the vast majority of that is down to having an equally determined crack at QL SuperBASIC for the last two and a half years. Among the following is what I had a head start on:

- Integer variables, although the syntax is different - %a instead of a%, allowing the % to be used to evaluate entire expressions as integers, with the downside that only 26 integer variables are available.
- Procedures, which (mostly) work the same way as on the QL, though the syntax is more like BBC BASIC; DEF FN isn't given the wide scope that QL SuperBASIC allows, but procedures can return values so that may be added to compensate.
- Local variables, for both procedures and subroutines. ("Subroutines? GOSUB? What is this, 1982?")
- Multiple exit points from a procedure, which doesn't confuse Next BASIC in any way (the QL has multiple RETURN points, if I remember...).
- MOD and bitwise operators with the integer variables.
- DPOKE and DPEEK, the Next equivalents of POKE_L and PEEK_L (though no _W variants).
- CHR$ 30 to resize the text horizontally and CHR$ 29 to resize it vertically, though it's rather restricted; still, I recognised that as the equivalent of CSIZE straight away.
- POINT can be used with PRINT in the same way as CURSOR on the QL.
- Dot commands .time and .date, the equivalent of DATE$, though this is only useful on a Next with an RTC module installed...
- Apparently... resizable windows... but I haven't got to that part of the manual yet!

All these concepts I had no problem understanding, and it's because I could relate them to what I'd seen on the QL. It was only when I got to chapter 17, involving tiles which were not very well explained, that I hit a brick wall and had to consult the experts. I've got those sorted now, and it's taken all of four days from opening the manual to writing a program that I'll most likely find useful.

This is what I'm going to be having fun with this year. Jamie Bradbury is this year's host of the comp.sys.sinclair Crap Games Competition, and he owns an N-Go, and knows his way around it, so he'll get to test my progressing efforts with the Next. But I will take a break and do some QL programming at some stage, because I'm not letting him get away without one QL entry.

Cheers, Sir Clive's business machine!


Spectribution: Dr. Jim's Sinclair computing pages.
Features my own programs, modified type-ins, RZXs, character sets & UDGs, and QL type-ins... so far!
Post Reply