Jump to content
PkK

SDCC 3.8.0 RC1

Recommended Posts

Dear SDCC users among the ColecoVision programmers,

today the first Release Candidate (RC1) for SDCC 3.8.0 has been created.
As always it has been put online in our SourceForge File section.
https://sourceforge.net/projects/sdcc/files/

If you have the time, please verify it and report back with the positive
or negative results.

In previous release 3.7.0, no binaries were released. 3.8.0 has binaries
gain, though the list of binary platforms changed. For 3.8.0, binaries
are released for GNU/Linux on amd64, Windows on amd64, macOS on amd64,
Windows on x86.
However: Unlike previous binary releases, the windwos installer have not
been checked by the Release Manager (my only machine with a Windows
installed needs a new poer supply, which hasn't arrived yet).

There have been various of improvements, both features and bug fixes
since SDCC 3.7.0. The full ChangeLog is at
https://sourceforge.net/p/sdcc/code/HEAD/tree/tags/sdcc-3.8.0-pre1/sdcc/ChangeLog.

The following is a list of particularly noticeable new features.

* Additional general utility function: bsearch()
* Support for rematerialization in the stm8 backend reduces register pressure and stack usage
* Merged upstream GNU binutils 2.30
* All Python code is now fully compatible with both Python 2.7 and Python 3.6, so Python 3 can be used instead of Python 2.
* Regression testing for diagnostics.
* Improved handling of local bool variables in the mcs51 backend substantially reduces code size.
* Large memory model for stm8 for 24-bit codespace allows using more than 32KB of Flash for code.
* New optimizations for calls to some standard library function (printf(), puts(), strcpy()).
* The type of true and false from stdbool.h change from int to bool.
* New C2X mode (--std-c2x, --std-sdcc2x, #pragma std_c2x) adds support for one-argument static_assert variant.
* Intermingling of declarations and statements (ISO C99).
* Support headers for AX8052 devices.
* Adopted GCC 8.2 regression tests (execute part of the GCC C torture tests).

Philipp Klaus Krause
SDCC 3.8.0 Release Manager

 

P.S.: Apart from the improvements in stadnard compliance, there is now "big" new feature relevant to ColecoVision programming. But there some smaller improvments in code generation for the Z80 and many bugfixes.

P.P.S.: This version is a bit more strict about use of the "restrict" keyword than the previous one; I have already made the necessary fix in libcvu for it to work with this SDCC, and will release a new libcvu version soon.

  • Like 3

Share this post


Link to post
Share on other sites

In previous release 3.7.0, no binaries were released. 3.8.0 has binaries

gain, though the list of binary platforms changed. For 3.8.0, binaries

are released for GNU/Linux on amd64, Windows on amd64, macOS on amd64,

Windows on x86.

However: Unlike previous binary releases, the windwos installer have not

been checked by the Release Manager (my only machine with a Windows

installed needs a new poer supply, which hasn't arrived yet).

Just let you know that the sdcc-3.8.0-rc1-x64-setup.exe installs fine on my computer. I've checked Cygwin, and I'm on 3.8.0 version now. It still works with CCI3. Only thing I had to do is to put the coleco.h, comp.h, and getput.h files in the include folder. It compiles my game properly.

Share this post


Link to post
Share on other sites

I would love to program some stuff.

I have all original manuals and programing guides from 1983 which is when I bought them. Yes I am that old.

Most of my ADAM work was from reverse engineering but I would love to do some new work with a new IDE.

My hesitation has always been that none of this has been in a modern environment.

Everything has always felt like it was dos based that you had to install it all in the root of the C: directory and had to start with a dos prompt.

Has any of this been modernized or am I just whistling Dixie here.

Share this post


Link to post
Share on other sites

Can someone create a script or show a picture of or better yet a simple guide of where to put everything.

 

It's been a while since the last time I used C and that was 1989 or so with Turbo C.

 

I am seriously trying to get started in all of this just to see how far I can go but...

 

 

Trying a bunch of older methods and I am finding out that your CPM emulator is not about to work on a Windows 10 x64 machine.

Install SDCC.

I have the latest library from z80.

 

I do not see any include files such as Coleco.h

 

Setting up all of this on a modern machine is a mess and I do appreciate the attempt from the community to breed new life into the Coleco series but this stuff needs to be updated.

 

As in someone super intelligent set up an IDE that you can type in everything a press a button that says build and tadaaaa a rom is created.

 

 

BTW, who uses tar or gz anymore? Getting errors trying to unzip.

I ended up giving admin rights to 7zip but nothing is in the includes directory.

Next someone will be using asf and divx..

So outdated.

 

Why is one CV and the other CVU?

Edited by Mike Harris

Share this post


Link to post
Share on other sites

OK, figured out a bunch of crap.

 

Some examples would not compile because of missing headers.

 

Now, trying cci3 it wants to install java.

Jezus H this is more headache and not worth the ball busting.

There is no reason on earth to install or use java.

 

I'll try again in a year or two when someone comes up with a real IDE

Share this post


Link to post
Share on other sites

Make sure that the headers, coleco.h, getput1.h and comp.h that came with the homebrew kit are in the sdcc>include folder. If not, click and drag the files into this folder. If you really don't want to use really java(This was made around 2009.), then you can try cci2 cci2.zip. Or use cygwin terminal and compile the project.

 

Here's an old video how to put stuff in SDCC:

There's 2 different homebrew kits, one that's is newcoleco. That come with a lot of sample programs and the book. The other is PpK's homebrew library. I usually use newcoleco homebrew kit and coleco.h, getput1.h and comp.h(for pletter compression).

 

I going to say that it can be frustrating programming for the Colecovision if you are new to the system. I got frustrated too, but I was able to get over the hurdles. You'll have to understand what NMI is and make sure your game loop have at least 1 delay(1); to keep the game at 60fps. There's very very few people programming in C for the Colecovision. I'm usually here on this forums if you need help.

Share this post


Link to post
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.

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