Jump to content
IGNORED

BASIC 10 Liner Contest 2022


vitoco

Recommended Posts

Gratz to everyone who entered.  I'm a little surprised I did so well, but very happy :)

 

A shame I never got to package up my extreme entry, covid knocked hell out of me that final week but I'm fine now.  Guess it's a ready made entry for next year, or maybe I can tweak it a bit more.

  • Like 2
Link to comment
Share on other sites

9 hours ago, Bunsen said:

Public's choice is based on itch.io download/views/rating statistics this year. 

Last year's public's choice based on twitter statistics. But that was too annoying for me to evaluate.

 

Greetings from NOMAM meeting from Itzehoe (Schleswig-Holstein/Germany).

and we had very little indication about that this year...

Link to comment
Share on other sites

I've played a number of games from this years contest from VCS, MSX, MC10, VIC, C64, some Plus 4/ZX81/ZX and a CPC entry, but I still don't have an Atari Emulator! :x 

I looked at Altirra, but it looks like the problem is the ROMs are subjected to Copyright and won't be released for a 1,000 years! I'm also trying to sway away from Windows Emulators and use my later Mac with El Capitan, the author of Altirra did recommend which version I could use on my WinXP box, but again it looks like those ROMs are the issue, I did read something about using the Emulator without any ROMs, but I think that only works with the Cartridge based stuff.

Edited by AMSDOS
Link to comment
Share on other sites

2 hours ago, AMSDOS said:

I looked at Altirra, but it looks like the problem is the ROMs are subjected to Copyright and won't be released for a 1,000 years! I'm also trying to sway away from Windows Emulators and use my later Mac with El Capitan, the author of Altirra did recommend which version I could use on my WinXP box, but again it looks like those ROMs are the issue, I did read something about using the Emulator without any ROMs, but I think that only works with the Cartridge based stuff.

Yeah!! I got Altirra v3.91 up and running with something and using the instructions from the Zombie game, I just needed to setup a Joystick. When the games ends though, there's a small BASIC Window at the bottom of the screen, is there anyway of changing that back to full screen or is that is that how it is with Altirra?  The only time I could get a full screen was when I selected BASIC from the List of Cartridge Options which comes up with Altirra BASIC 8k, but when I load the ZOMBIES.BAS, the game starts up immediately.

Edited by AMSDOS
Link to comment
Share on other sites

12 minutes ago, AMSDOS said:

Yeah!! I got Altirra v3.91 up and running with something and using the instructions from the Zombie game, I just needed to setup a Joystick. When the games ends though, there's a small BASIC Window at the bottom of the screen, is there anyway of changing that back to full screen or is that is that how it is with Altirra?  The only time I could get a full screen was when I selected BASIC from the List of Cartridge Options which comes up with Altirra BASIC 8k, but when I load the ZOMBIES.BAS, the game starts up immediately.

Just hit reset (F5) or type GRAPHICS 0

 

Edited by erichenneke
  • Like 1
Link to comment
Share on other sites

7 hours ago, erichenneke said:

Just hit reset (F5) or type GRAPHICS 0

 

Yes that's the solution I was after, thanks.

 

With Altirra I wanted to see how a game like 1nvas0r played. I downloaded the atr file and the instructions, the instructions suggested I would require FastBasic 4.5.2, so I downloaded an atr file for that and used Altirra to boot that image, which all worked, but then I was trying to load 1nvas0r from D2 drive with FBI, I just ended up Detaching the FastBasic file and booted 1nvas0r from D1 which worked fine up to the Title Screen. After a bit of pressing of the Keyboard I discovered [F2] and [F3] was my Start and Select Keys, but then I couldn't get my cannon to Fire until I configured the Joystick to the Numeric Keypad and used [0] to shoot the invaders.

Link to comment
Share on other sites

Altirra could be a bit hard to set up and use for the first time, but once you did it to emulate and play your loved games, you will find that there is a lot more inside it to discover.

 

About original Atari OS and BASIC ROMs, you can download, extract and use them legally from XFormer 2.5 software, even when Atirra includes its own AltirraOS and AtirraBasic ROM replacements.

 

About 1nvas0r, the official ATR includes both the FastBasic IDE plus the game source code to load, parse and run, and the already compiled XEX file in both NTSC and PAL versions, which can be loaded directly by the emulator if they are extracted from the ATR.

 

BTW, Altirra has an ATR browser for the mounted drives, and you can drag&drop files between it and the Windows Explorer.

 

  • Like 2
Link to comment
Share on other sites

Also, Altirra basic is great and compatible with Atari basic, BUT it is much more efficient and faster than Atari basic.  Which is great, unless you want to intentionally run at the "real" atari basic speed.

 

So I recommend you get the Atari basic rev C rom as well and use that to run the PUR80 10 liners (which all require Atari basic). Unless you want them to run much faster, which can also be fun depending on the game, of course!

 

Eric

Edited by erichenneke
  • Like 1
Link to comment
Share on other sites

On 4/11/2022 at 7:24 AM, vitoco said:

Altirra could be a bit hard to set up and use for the first time, but once you did it to emulate and play your loved games, you will find that there is a lot more inside it to discover.

 

About original Atari OS and BASIC ROMs, you can download, extract and use them legally from XFormer 2.5 software, even when Atirra includes its own AltirraOS and AtirraBasic ROM replacements.

So I went to that website and downloaded the XF25 file, which contains some ROMs.

 

On 4/11/2022 at 8:00 AM, erichenneke said:

Also, Altirra basic is great and compatible with Atari basic, BUT it is much more efficient and faster than Atari basic.  Which is great, unless you want to intentionally run at the "real" atari basic speed.

 

So I recommend you get the Atari basic rev C rom as well and use that to run the PUR80 10 liners (which all require Atari basic). Unless you want them to run much faster, which can also be fun depending on the game, of course!

I wasn't sure what the Atari BASIC ROM came with the XF25 package which just seems to be called ATARIBAS.ROM, though I found the Atari BASIC rev C ROM on a Frontend FTP site and Downloaded that.

 

Today when I got back to Altirra I was able to go into the Firmware Configuration and then add the ROMs:

 

320588364_AltirraFirmwareConfiguration.thumb.PNG.58be412a859f58ee4a12dbade4e1dc8b.PNG

 

Though I'm unsure if I've set it up correctly because when I run ZOMBIE now, I get a Screen like this:

 

102505844_ZombieScreenshot.png.080ab9f1ba446e3291b70de3cb3034a4.png

 

Sometimes the top line crosses diagonally from bottom to top and once the game was impossible because of it. It may have something to do with which ROMs are used, though what tools were used when it was coded, though I'm by no means critizing the author. If the ROMs were incorrect, normally the system wouldn't operate, though this seemed to be working fine and the game I was playing while it was playable, it was a little bit slower than the Altirra BASIC and OS.

On 4/11/2022 at 7:24 AM, vitoco said:

 

About 1nvas0r, the official ATR includes both the FastBasic IDE plus the game source code to load, parse and run, and the already compiled XEX file in both NTSC and PAL versions, which can be loaded directly by the emulator if they are extracted from the ATR.

Okay, so there's an OS I can boot on the 1nvas0r ATR? Or do I need to use the FastBasic ATR to get to the OS and then switch ATRs and use FBI on the 1nvas0r ATR to view the listing?

 

On 4/11/2022 at 7:24 AM, vitoco said:

BTW, Altirra has an ATR browser for the mounted drives, and you can drag&drop files between it and the Windows Explorer.

 

Okay, I haven't noticed it, but have seen other emulators with a simular tool.

Link to comment
Share on other sites

FWIW, I think most ROM sets are still under copyright. In some cases, non-profit use was granted or nobody really cares. If the new Atari wanted to be om their fans' side, they would release firmware ROMs. Same about everyone else but generally they don't love their fans, only the wallets of those.

  • Like 3
Link to comment
Share on other sites

I used some nasty shortcuts to get that squashed into 10 lines, and after 30mins off bug hunting I realised that I'd written it in 400/800 and not 800xl mode.

 

So set it up to use 400/800 PAL mode with the altirra OS and I think it should work.

 

Sorry, that was a major F up.

  • Like 1
Link to comment
Share on other sites

6 hours ago, AMSDOS said:

Sometimes the top line crosses diagonally from bottom to top and once the game was impossible because of it.

1 hour ago, Preppie said:

So set it up to use 400/800 PAL mode with the altirra OS and I think it should work.

When I built my compilation ATR, I had to modify the menu to set up the XL/XE computer/emulator to what that zombies game needed to work properly. ?

 

  • Like 1
Link to comment
Share on other sites

Yeah, sorry about that guys.  The code assumes plots start at 0,0 which isn't true of all setups.  You can just add a plot0,0 but then it breaks the 80 character rule:

 

0DIMZ(9),R(9),W$(99):GR.28:C.34:F.I=1TO9:R(I)=22:Z(I)=I*4:N.I:DR.39,0:DR.39,23


0DIMZ(9),R(9),W$(99):GR.28:C.34:F.I=1TO9:R(I)=22:Z(I)=I*4:N.I:PL.0,0:DR.39,0:DR.39,23


 

Link to comment
Share on other sites

49 minutes ago, Preppie said:

Yeah, sorry about that guys.  The code assumes plots start at 0,0 which isn't true of all setups.  You can just add a plot0,0 but then it breaks the 80 character rule:

 


0DIMZ(9),R(9),W$(99):GR.28:C.34:F.I=1TO9:R(I)=22:Z(I)=I*4:N.I:DR.39,0:DR.39,23


0DIMZ(9),R(9),W$(99):GR.28:C.34:F.I=1TO9:R(I)=22:Z(I)=I*4:N.I:PL.0,0:DR.39,0:DR.39,23


 

It's funny because I thought of using that same trick in MetroSync for the Life Energy Status Bar to save some characters in the code.  I was going to just start with a DR. (without a PL.)   But I found by doing that it didn't work in all config situations when I tested it under PAL vs. NTSC and various models/OS and DOS combinations, etc.   So I decided the PL. needed to stay!   These 10 liners are all about compromise, as we've mentioned in this thread before.    

 

Link to comment
Share on other sites

I was just wondering if DIMZ(9),R(9) is necessary?

On the Amstrad an array doesn't need to be defined if it is less than 10, which was how I was able to get by saving myself some keystrokes for the Find the Exit games.

So I just wondered if it could be shortened to DIMW$(99)?

Edited by AMSDOS
Link to comment
Share on other sites

On Atari BASIC, all variables need some memory to store values, and each variable (represented by a token in the program when the line is entered when typing) has few bytes assigned in a table bellow the program area. For a numeric scalar variable, those bytes hold the value in BCD format (floating point representation), but for string variables and numeric arrays, those bytes store a pointer to data memory and the length, memory that is assigned at run time when the DIM statement is executed. The assigned area starts at the end of the program area for the first DIM and so on, no matter the size of the string or array. Obviously, if a DIM specifies a size larger than the available RAM (up to just before the screen RAM including the display list), an error is raised and the program stops.

 

For tenliners, we have developed many tricks to force DIM use specific memory areas, in order to manage the display and player/missile graphics using (sub)string assignments, just because this BASIC flavor does not have a MOVE statement to copy large memory blocks, and PEEK/POKE inside a FOR-NEXT loop is too sloooooow for action games.

 

Edited by vitoco
  • Like 1
Link to comment
Share on other sites

23 hours ago, carlsson said:

FWIW, I think most ROM sets are still under copyright. In some cases, non-profit use was granted or nobody really cares. If the new Atari wanted to be om their fans' side, they would release firmware ROMs. Same about everyone else but generally they don't love their fans, only the wallets of those.

Sorry, yes I said the wrong thing, of course the ROMs are still under copyright. I just meant some companies have given permission to use their ROMs and while I'm unsure if there are still companies which haven't given permission, I wasn't sure what the situation was with Atari.

 

6 hours ago, vitoco said:

On Atari BASIC, all variables need some memory to store values, and each variable (represented by a token in the program when the line is entered when typing) has few bytes assigned in a table bellow the program area. For a numeric scalar variable, those bytes hold the value in BCD format (floating point representation), but for string variables and numeric arrays, those bytes store a pointer to data memory and the length, memory that is assigned at run time when the DIM statement is executed. The assigned area starts at the end of the program area for the first DIM and so on, no matter the size of the string or array. Obviously, if a DIM specifies a size larger than the available RAM (up to just before the screen RAM including the display list), an error is raised and the program stops.

 

For tenliners, we have developed many tricks to force DIM use specific memory areas, in order to manage the display and player/missile graphics using (sub)string assignments, just because this BASIC flavor does not have a MOVE statement to copy large memory blocks, and PEEK/POKE inside a FOR-NEXT loop is too sloooooow for action games.

 

Sounds all very familiar, though I don't know much about Floating point apart from some languages use 4 bytes for storing a Floating point.

I just wondered if Atari BASIC sets aside some memory for Arrays without DIM being used since Locomotive BASIC on Amstrad can use them (10 seems to be the limit), though there doesn't seem to be a limit on the number of them you can have, which allows the coder to exceed 10 blocks in that manner. Another BASIC which seems to support this is the Apple //e. When I tested some things out in Locomotive BASIC, the array's I'd created were also stored after the BASIC program, so the code would eventually fill up memory resulting in a Memory Full error.

Link to comment
Share on other sites

  • 3 months later...

Hello Gury

 

14 hours ago, Gury said:

From my understanding, NOMAM is a meeting, which introduces all the entries in the competition?

 

You can real all (or at least a lot) about the NOMAM meeting on my meetings page.

 

Sincerely

 

Mathy

 

PS in September we have the Fujiama, which is closer to you and a lot bigger.  You can find information about the Fujiama on the same page.

 

 

 

 

Edited by Mathy
  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...