Jump to content
IGNORED

New cart developers code available


karri

Recommended Posts

As there has been a few queries for how to create a real cart using the

new compiler from the cc65.org site I have uploaded all stuff needed

for this together with two example projects on

http://sipo.fi/lynxdev.html.

 

To make life easier these are Windows-ports of the compiler. The projects were created on Debian but should compile on Windows systems also.

--

Have fun,

 

Karri[/url]

Link to comment
Share on other sites

Hello Karri,

 

thanks for providing that collection of links.

But unfortunately the DOIT-batchfiles don't work in a standard Windows-environment, i was able to adapt the doit.bat for the SKETCH-example, but failed to get the bigger one for the CART_TEMPLATE working (i think the DOS-commandline-character-buffer-limit is the reason for this).

 

Perhaps a MAKEFILE would be the better solution?

 

Bye!

Matthias

Link to comment
Share on other sites

Actually the Debian version is easiest to install from my CVS.

 

CVSROOT=:pserver:anonymous@sipo.fi:/home/lynx/cvs

cvs login

(password is th6dxx)

 

cvs co cc65-lynx

cd cc65-lynx

sudo make -f make/gcc.mak install

(If you don't have sudo installed just do the last command as root.

If you have a vanilla Debian you may have to run

apt-get install zlib1g-dev zlib1g

before compiling the cc65-tools.

)

 

The commands above will make all tools usable to the Debian system.

 

cvs co cart_template

cd cart_template

make

 

This will produce a cart with a intro and an application called Lynx-Sketch on a cart.

 

--

Regards,

 

Karri

Link to comment
Share on other sites

make -f make/gcc.mak

 

make[3]: Entering directory `cc65-lynx/libsrc/common'

vsscanf.c(25): Error: Struct/union has no field named `buf'

vsscanf.c(25): Error: Struct/union has no field named `ridx'

vsscanf.c(25): Error: Subscripted value is neither array nor pointer

vsscanf.c(27): Error: Struct/union has no field named `ridx'

vsscanf.c(37): Error: Variable `id' has unknown size

vsscanf.c(42): Error: Struct/union has no field named `fin'

vsscanf.c(42): Error: Undefined symbol: `infunc'

Link to comment
Share on other sites

Even the docs compile if you get the debiandoc-sgml package.

 

But unfortunately my linker configuration is a bit broken with the latest version of the compiler. Before I used "wprot" as a type for read-only segments and now I need to use "ro" instead. This is in the *.cfg files.

 

There also seems to be a new segment called "INIT" that you need to put somewhere. It contains stuff run at "STARTUP" that may be needed later. So far I have not added this to my config file. But I try to do it for my both projects and also update the Windows binary snapshots to the same level.

 

--

Karri

Link to comment
Share on other sites

Even the docs compile if you get the debiandoc-sgml package.

 

hm hm. without a debian system. and anyway a have a sgml system installed... which does not like your sgml files.

 

But unfortunately my linker configuration is a bit broken with the latest version of the compiler. Before I used "wprot" as a type for read-only segments and now I need to use "ro" instead. This is in the *.cfg files.

 

There also seems to be a new segment called "INIT" that you need to put somewhere. It contains stuff run at "STARTUP" that may be needed later. So far I have not added this to my config file. But I try to do it for my both projects and also update the Windows binary snapshots to the same level.

 

... which means the exaple is not compiling anymore.

Link to comment
Share on other sites

Now I have a working set of examples there again.

 

I had to upload Windows versions of make, cp and rm in order to get my Makefiles to work on Linux and Windows platforms.

 

I also had to add C:lynxbin to the Windows path and create two environment variables CC65_INC to C:lynxinclude and CC65_LIB to C:lynxlib.

 

When the next release for cc65.org comes out there will be a standard Windows installer and Lynx support included.

--

Enjoy,

 

Karri

Link to comment
Share on other sites

As a matter of fact it seems to be there already. Once you unzip the two packets anywhere you just click on the install-program and it will install the compiler into C:Program Filescc65

 

But I have not checked if it also creates the two environment variables.

 

They should point to

 

CC65_INC = "C:Program Filescc65include"

CC65_LIB = "C:Program Filescc65lib"

 

Actually I think it is a bad idea to have spaces in your directory names.

 

For the people not interested in compiling stuff here is the compiled cart_template application ready to run on a real Lynx or on Handy.

 

--

Cheers,

 

Karri

cart.zip

Link to comment
Share on other sites

First, many thanks for your work on this :)

 

Even the docs compile if you get the debiandoc-sgml package.

 

hm hm. without a debian system. and anyway a have a sgml system installed... which does not like your sgml files.

 

You need sgml2html in order to compile de docs. It is included in the linuxdoc-tools package for debian, I don't know for other distributions, but it should be available in rpm somehere.

 

Now I have a working set of examples there again.

 

I still cannot compile it...

 

make[2]: Leaving directory `/home/damien/handy/karri/cart_template/sketch'

ld65: Error: lynxcart.cfg(15): Type expected

make[1]: *** [cart.lnx] Error 1

make[1]: Leaving directory `/home/damien/handy/karri/cart_template/cart'

make: *** [all] Error 2

Link to comment
Share on other sites

You have to reload everything. The cart_template also.

 

The reason is that in cart_template/cart/lynxcart.cfg file there is type fields with the value "wprot" that were changed to "ro" in the newest release of the cc65 tools. The real official release of cc65 that includes the Lynx is not out yet, so the details keep changing on a weekly basis.

 

But once Uz releases the next version the things will calm down.

 

Anyway... This is a good taster of the new compiler.

 

Please also note how small carts it can produce. Just a few kbytes for the entire Lynx-Sketch cart.

 

--

Regards,

 

Karri

Link to comment
Share on other sites

Thanks Karri for your quick answer, I updated but had to modify myself the type in the lynxcart.cfg file.

 

I now have the INIT problem you spoke about with sage :

make[2]: Leaving directory `/home/damien/handy/karri/cart_template/sketch'

ld65: Error: Missing memory area assignment for segment `INIT'

make[1]: *** [cart.lnx] Error 1

make[1]: Leaving directory `/home/damien/handy/karri/cart_template/cart'

make: *** [all] Error 2

 

I had a look at the archive you put online and you're right, it produces a very small cart! Can't wait for the final version :)

Link to comment
Share on other sites

Strange. Perhaps I did not update the server after all...

 

Anyway. Just copy the line in the lynxcart.cfg file for STARTUP and put

if after the startup line and rename it to INIT.

 

Then you add to cart/directory.s an import line

 

.import __INIT_SIZE__

 

and add __INIT_SIZE__+ to the size calculation of the first directory entry. It already includes __STARTUP_SIZE__.

 

--

Karri

Link to comment
Share on other sites

Thanks Karri, it worked great :)

 

Another question as you are using Debian ;) : what emulator do you use? I tried sdlhandy but it doesn't work that well... So I have to try my programs under windows :(

835155[/snapback]

 

Actually I use the Windows version of Handy under wine. It works without

a Windows install out of the box.

 

There are some minor issues wit Handybug. I have to delete the user.reg files

at every startup.

 

--

Karri

 

PS. I just committed the cart_template in the main www.cc65.org contrib directory

using a new name lynx-cart-demo-1.0. There is also a text file describing the

functionality and how to modify/expand the software on the template.

Link to comment
Share on other sites

Actually I use the Windows version of Handy under wine. It works without

a Windows install out of the box.

 

There are some minor issues wit Handybug. I have to delete the user.reg files

at every startup.

 

Hmm... mine does NOT work... and I used the newest wine version. I know it runs under "crossover office", maybe also wineX, but normal wine is new for me.

 

Tschau,

 

Bjoern

Link to comment
Share on other sites

Actually I use the Windows version of Handy under wine. It works without

a Windows install out of the box.

 

There are some minor issues wit Handybug. I have to delete the user.reg files

at every startup.

 

Hmm... mine does NOT work... and I used the newest wine version. I know it runs under "crossover office", maybe also wineX, but normal wine is new for me.

 

Tschau,

 

Bjoern

836183[/snapback]

 

I updated my wine yesterday (Debian testing). And Handy runs ok with standard wine.

 

But there is a new bad thing in the new wine. My Mttty.exe cannot handle threads for my serial ports anymore.

 

--

Karri

Link to comment
Share on other sites

Actually I use the Windows version of Handy under wine. It works without

a Windows install out of the box.

 

There are some minor issues wit Handybug. I have to delete the user.reg files

at every startup.

 

Hmm... mine does NOT work... and I used the newest wine version. I know it runs under "crossover office", maybe also wineX, but normal wine is new for me.

 

Tschau,

 

Bjoern

836183[/snapback]

Debian testing here too and no problem under normal wine, last handy version works great.

wine --version gives me Wine 20050310.

 

Sage, what wine version and linux distribution do you use?

Link to comment
Share on other sites

Debian testing here too and no problem under normal wine, last handy version works great.

wine --version gives me Wine 20050310.

 

Sage, what wine version and linux distribution do you use?

 

837098[/snapback]

 

Gentoo, Wine 20050111

 

Latest handy version AND a self compiled version... same error message (tries to access adress 0x0)

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