DarkStar 2

General games-related topics
Moggy
Posts: 3231
Joined: Wed Jun 18, 2008 2:00 pm

Re: DarkStar 2

Post by Moggy »

sirmorris wrote:Hi Moggy - yep - I gone and introduced a regression in this build :P I'll fix that later this morning.

What kind of glitches are you seeing?? Could it be zxpand loading the title screen??

C

Indeed Charlie title screen, top and bottom border little lines appear and a twitch of screen.
User avatar
zx81jens
Posts: 201
Joined: Sat May 10, 2008 8:26 am
Location: a Basement in Nienburg / Germany

Re: DarkStar 2

Post by zx81jens »

hi guys!

i am currently working on a ZX81-ARCADE with ZXPand + sound. DSTAR2 is the perfect game for that!!!! however, the control should be adjusted...

5,6,7,8 for movement, 0 (zero) for switching and SHIFT+5 for retry (quit is not necessary)

is it possible to change that?? the game should be AUTOSTART, too :-)

greetings an thanx
jens
eyerything will be okay in the end.
if it´s not okay, it´s not the end.

and: uıɐbɐ ʎɐqǝ uo pɹɐoqʎǝʞ ɐ ʎnq ɹǝʌǝ ɹǝʌǝu ןןıʍ ı
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: DarkStar 2

Post by sirmorris »

It already supports both sets of controls :)

C
Last edited by sirmorris on Sat Jan 28, 2012 9:24 am, edited 1 time in total.
User avatar
zx81jens
Posts: 201
Joined: Sat May 10, 2008 8:26 am
Location: a Basement in Nienburg / Germany

Re: DarkStar 2

Post by zx81jens »

i hate the 5,6,7,8,0-keys also - but many (older) games use them - so i had to decide for only one joystick-configuration :-(

i´ll present the ZX81-ARCADE in march at the 16th-user-meeting in germany!!

grretings
jens
eyerything will be okay in the end.
if it´s not okay, it´s not the end.

and: uıɐbɐ ʎɐqǝ uo pɹɐoqʎǝʞ ɐ ʎnq ɹǝʌǝ ɹǝʌǝu ןןıʍ ı
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: DarkStar 2

Post by sirmorris »

OK - I'm happy with the latest version BUT it requires RAM at 8K ... is that a problem?

** EDIT - is the collection meant for zxpand or for all users with hires/sound capable machines?

C
User avatar
siggi
Posts: 988
Joined: Thu May 08, 2008 9:30 am
Location: Wetterau, Germany
Contact:

Re: DarkStar 2

Post by siggi »

Hi Charlie,
I played with the 1.3 version on my Laptop. I don't have a ZXPAND connected to it, but I have a Sascha's sound card connected . But I don't get any sound :(

And about LOAD/SAVE of hires screens or highscores: could you please move LOAD/SAVE to the BASIC section of the program, so that users, who want to load/save using floppy, USB-sticks, MEFISDOS, FAT32 MMC cards or Ethernet could modify the BASIC section to load/save on their mass storage devices?

Siggi
--------------------------------------------------------------------------------------------------------------------------------------------------------
EDIT: A solution for LOAD/SAVE outside the C program could be:
start the C program with
2 GOTO USR 16514

Then the C program could use "exit(200)" or " exit(400) to go to BASIC line 200 or 400 (e.g. to do a LOAD of the startup screen from USB stick)

The BASIC should then (after having done its job) "GOTO 2" to return to the C program. The C program can save its internat state in global or static variables (they are initialised during compile time only and keep their values after restart of the C program), so that it knows where to continue the game ...

Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: DarkStar 2

Post by sirmorris »

This was intended to be a showcase for ZXpand, so I didn't really cater for other hardware set-ups. I'm making some changes to remedy this.

The first round is done - I've separated the AY detection from the ZXpand detection and now any AY chip at $DF/1f, $CF/0F should be detected.

The next step will be to add code to call out to BASIC for the file operations if no zxpand is present. I like your suggestion Siggi but I think the in-game saving of hiscores would complicate the logic unnecessarily - have you any experience of z88DK's BASIC functions interface? Unfortunately my experience of this tool set isn't a particularly positive one. I have the constant feeling that things are holding together with thin threads :?

YMMV :D

C
User avatar
siggi
Posts: 988
Joined: Thu May 08, 2008 9:30 am
Location: Wetterau, Germany
Contact:

Re: DarkStar 2

Post by siggi »

sirmorris wrote: I like your suggestion Siggi but I think the in-game saving of hiscores would complicate the logic unnecessarily
As I wrote above: static and global variables hold their values when the program is restartet. So if highscore and other things are hold in those variables, a SAVE of the program also saves that variables (e. g. highscore) and LOAD loads the "frozen" values of the last SAVEd state. So highscore need not to be saved separately.
have you any experience of z88DK's BASIC functions interface?
No. As I understood the description, the C program can execute a single BASIC statement. But that might not be enough:
using e. g. a ZX96 with floppy drive or MEFISDOS those lines need to be executed:

Code: Select all

100 POKE 8,1   /* page in EPRROM at 8K with floppy driver */
110 PRINT USR 8192,... /* do LOAD or SAVE */
120 POKE 8,5   /* page out EPROM and page in RAM at 8K */
130 goto 2 /* back to C */
or for MEFISDOS

Code: Select all

100 POKE 8,13   /* page in EPRROM at 8K with MEFISDOS and RAM above 48K  */
110 PRINT USR 8192,... /* do LOAD or SAVE */
120 POKE 8,5   /* page out EPROM and page in RAM at 8K and page in normal RAm at 48K */
130 GOTO 2 /* back to C */
So the z88dk's C to BASIC interface IMHO would not help ...

Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: DarkStar 2

Post by sirmorris »

Automatic save occurs down inside the game loop. restarting the game at that point - no matter how many static variables are saved - would be nasty.

If we went with the re-start approach, then I wouldn't auto-save the high scores. This could be done at program exit, with the player having the responsibility to make sure that the save button is pressed before quitting...

If you're happy with this compromise then I can go ahead with it.

C
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: DarkStar 2

Post by sirmorris »

Thinking about it - why so complex?

Load the screen & hi-score in BASIC, invoke the machine code, and save the high score at exit.

A few pokes would tell the program if data was loaded, and on exit a quick peek would indicate if high score data needs to be saved.

Of course, z88dk doesn't make adding BASIC very simple - so I may have to create a tool to help...

C
Post Reply