Jump to content
IGNORED

Befok, Choplifter & Moon Runner


The_Laird

Recommended Posts

Just been on this website http://www.geocities.com/james7780/ and noticed that this guy, James, was developing all three of these games; Befok (Berzerk), Choplifter and Moon (Patrol) Runner. I see he gave the source away a while back for anyone who wanted to carry them on, in fact I remember the thread here on A.A. Was just wondering if anyone had picked up development of them? It seems Befok was 80% complete so it wouldn't take much to finish. Moon Runner is listed as 50% complete and I don't know about Choplifter. Anyone have any further info??

Link to comment
Share on other sites

I think I tried each of them in Handy way back when. It's been a while. Not that I'm uninterested, just too many projects backed up! I already have Ultravore plus another game which needs work, and I have ideas for two more Lynx mini-games which are not the usual pong/tetris/etc. fare. Only problem is no free time to work on them! ;)

Link to comment
Share on other sites

I gave up on these games because of lack of time, and lack of Lynx CPU power :\

 

However I have recently completed "Chopper X" (well, sort-of complete :) ) for the Lynx, and I would like to do another "minigame" for Lynx.

 

Compo's are great motivation. We need another Lynx compo.

 

- jum (aka James)

 

PS: May take another crack at Moon Patrol one day...

Edited by jum
Link to comment
Share on other sites

I gave up on these games because of lack of time, and lack of Lynx CPU power :\

 

However I have recently completed "Chopper X" (well, sort-of complete :) ) for the Lynx, and I would like to do another "minigame" for Lynx.

 

Compo's are great motivation. We need another Lynx compo.

 

- jum (aka James)

 

PS: May take another crack at Moon Patrol one day...

921602[/snapback]

Hey, Jim, nice to see you posting in these forums!

 

I remember the trouble you had getting your engines to perform well... you might want to download the latest cc65 from cc65.org with the Lynx libraries. I have not used it myself yet, but I know some of the other Lynx hobby programmers have put significant effort into making the compiler optimize better for space and performance.

Link to comment
Share on other sites

I remember the trouble you had getting your engines to perform well... you might want to download the latest cc65 from cc65.org with the Lynx libraries. I have not used it myself yet, but I know some of the other Lynx hobby programmers have put significant effort into making the compiler optimize better for space and performance.

921613[/snapback]

 

I'm definately going to take a look at the 'new' cc65. Might just make the difference that I need :) ...

 

Also good to see that Songbird is still going strong.

Edited by jum
Link to comment
Share on other sites

I'm definately going to take a look at the 'new' cc65. Might just make the difference that I need :) ...

922258[/snapback]

 

There will be a major release in a few days that includes the Lynx support.

The previous release was done in the beginning of 2004 and currently the

Lynx has only been supported in the daily developer builds.

 

So be sure to get the daily snapshot or wait for the version 2.11.

 

I have also updated my cart template in the contrib-directory to be

compatible with the 2.11 compiler.

 

To get going you need the UnxUtils from sourceforge, the cc65 compiler,

lynx libraries and my cart template for the Lynx.

 

For lazy people here they are in a link format:

(The name of the packages change every day - it's a daily snapshot)

cc65 compiler

Lynx libraries

Lynx cart template 1.1 - should appear there soon

UnxUtils - needed for my cart template to work

 

Actually you only need "make", "echo", "rm" and "cp" from the UnxUtils package.

 

--

Have fun,

 

Karri

Link to comment
Share on other sites

  • 2 weeks later...
I'm definately going to take a look at the 'new' cc65. Might just make the difference that I need :) ...

922258[/snapback]

 

Thanks Karri for the links to cc65.

 

I spent some time last night trying to port Chopper X from the "old" cc65/lynx libs to the new cc65/lynx libs (cc65 2.11), without much success.

 

Seems like the lynx libs for the new cc65 are a bit thin.

 

Also the way the new stuff works is very different to the old cc65/lynx stuff, making upgrading old code more difficult.

 

Does anyone have any new cc65 source code showing how to:

- set up a VBL interrupt function

- set up and use sprites

- swap buffers

- etc

 

???

 

- jum

Link to comment
Share on other sites

Does anyone have any new cc65 source code showing how to:

- set up a VBL interrupt function

- set up and use sprites

- swap buffers

- etc

931020[/snapback]

 

Sure.

 

First lets set up the system with VBL interrupts:

----------------------------

#include <lynx.h>
#include <tgi.h>
#include <joystick.h>
#include <conio.h>
#include <6502.h>

extern char lynxtgi[]; // I am going to link in the tgi driver statically
extern char lynxjoy[]; // I am going to link in the joy driver statically

extern void init_irq(void);
extern void install_irq(unsigned char num, unsigned func );
extern void vbl(void);
#define enable_irq(n)\
 asm(" lda #$80\n"\
     " tsb $fd01+"#n"*4\n")    /* enable interrupt of timer n */

extern unsigned char drawPending;

main()
{
 tgi_install(&lynxtgi); // This will activate the Lynx screen
 joy_install(&lynxjoy); // This will activate the Lynx joypad
 tgi_init();
 init_irq();
 install_irq(2, (int)&vbl);
 enable_irq(2);
 CLI();

 while (1) {
     // gameplay
     if (!drawPending) {
         // draw next screen
         drawPending = 1; // Swap screens in next VBL interrupt
     }
  }

 

Lets continue with sprites:

----------------------------

#define tgi_sprite(spr) tgi_ioctl(0, (unsigned)(spr))

typedef struct {
unsigned char b0;
unsigned char b1;
unsigned char b2;
void *next;
void *bitmap;
int posx, posy, sizex, sizey;
char palette[8];
} sprite_t;

extern char background[];

static sprite_t Sbackground    = {
0xc0,0x10,0x20,
       0,&background,
       0,0,0x100,0x100,
{0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef}
};

tgi_sprite(&Sbackground);

       tgi_setcolor(COLOR_RED);
       tgi_bar(0, 10, 100, 100);
       tgi_setcolor(COLOR_BLACK);
       tgi_outtext(50, 30, "Hello World!");
       if (kbhit()) {
           switch (getc()) {
           case '1':
               tgi_outtext(50, 40, "Opt 1 hit");
               break;
           case '2':
               tgi_outtext(50, 40, "Opt 2 hit");
               break;
           case '3':
               tgi_outtext(50, 40, "Opt 1 and Opt 2 hit");
               break;
           case 'F':
               tgi_outtext(50, 40, "Flip screen request");
               break;
           case 'R':
               tgi_outtext(50, 40, "Restart request");
               break;
           case 'P':
               tgi_outtext(50, 40, "Pause... request");
               break;
           case '?':
               tgi_outtext(50, 40, "All 3 buttons down");
               break;
       }


--------------------

 

I have examples in the config directory for making a complete cart with

sprites, VBL interrupts, flip/restart/pause, joypad etc.

Look for lynx-cart-demo-1.1.zip for making a real cart image.

 

I can also send you my jellybeans port if you want to see how to make

a downloadable application.

 

There is also a section in the documentation of the new compiler where

everything is explained.

 

And I have a new tool for downloading midi-files and creating polyphonic

music on the lynx. It is completely written in C-code.

 

--

Regards :cool: ,

 

Karri

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...