Has Solid-C compiler any known bugs?

Page 1/3
| 2 | 3

By DarkSchneider

Paladin (965)

DarkSchneider's picture

23-01-2017, 09:06

I am looking at Solid-C because it compiles MSX-C code with no changes, but I don't know if it can be used with guarantees it won't break the code.

Login or register to post comments

By Wolverine_nl

Paragon (1160)

Wolverine_nl's picture

23-01-2017, 11:57

I also would like to know this, anybody got good experience with this compiler?

By AxelStone

Prophet (3189)

AxelStone's picture

24-01-2017, 20:22

Another interested in Solid-C. The compiler is fastest than MSX-C and generates a more compact ASM code, so I suposse it's more efficient. I'm mainly interested because all my codes are in MSX-C so I'm not thinking migrate to HiTech, but SolidC is fully compatible and includes improved versions of M80 and L80.

By Manuel

Ascended (19273)

Manuel's picture

25-01-2017, 00:21

Did you guys ever try BDS C or Hisoft's C compiler?

By Josb

Master (206)

Josb's picture

25-01-2017, 09:29

Hi, I’m keen on coding under BDS C, the best compiler for MSX which is easier and faster than others (even it makes code smaller Smile ). The matter is that it was created for cp/m OS and it doesn’t use z80 op-codes Sad . Nevertheless, it is easy to create new librarian functions under assembler because that’s clearly explained in its user manual if you are able to write code under old assemblers for 8080 as m80 or so. It doesn’t manage interruptions because of run time library. So, I suppose that if someone wants to create games seriously, he should use other enhanced compilers or straightly assembler (the best option).
Anyway, I enjoy myself writing silly things as this one Tongue
https://www.msx.org/forum/msx-talk/development/simple-way-ge...
Of course, I encourage you to use it on real machines.

By Wolverine_nl

Paragon (1160)

Wolverine_nl's picture

25-01-2017, 09:42

Yes, BDS C, old, 1979 it was first a full version (check the website) but it is still strong. I am mostly busy with games, so for me it would be that i need control/usage of certain low level things like interupts etc.

but I am also reading on the HiSoft c compiler, looks promising, also k&r c , is it freely available?

By DarkSchneider

Paladin (965)

DarkSchneider's picture

25-01-2017, 10:10

Some compilers here including Hisoft:

http://www.z80.eu/c-compiler.html
Documentation (can't put it at once because the forum breaks the url, paste all the following into one url):
http://www.cpcwiki.eu/imgs/a/a0/Hisoft_C_
(Hisoft)_Manual.pdf

But, it compiles MSX-C code as is? The ASM output must be M80 compliant, and the parameters passing must be the same (also have to check this for Solid-C). For Hisoft, it says (page 49, 3.26)

Quote:

recursive calls are permitted to any function

So I think it uses always the stack, like SDCC, and not registers like MSX-C. So the same MSX-C libraries could not be used.

For CP/M Hitech-C compiler, here can get all needed. BUT this one is not MSX-C compatible.

https://github.com/sharksym/CPMEMU_HI-TECH_C

Just compile with command (DOS console):
CPM.EXE command parameters
command = the Hitech commands, C/CGEN/OPTIM/etc. See Hitech documentation.

By Wolverine_nl

Paragon (1160)

Wolverine_nl's picture

25-01-2017, 10:09

Yes Hisoft C is K & R like ASCII MSX-C, but if it is 100% compatible, don't know that until I fire it up later tonight.
Otherwise Hitech-C compiler is the other option, but then a massive rewrite is needed and the libraries as well.

By DarkSchneider

Paladin (965)

DarkSchneider's picture

25-01-2017, 10:11

I updated my answer with argument passing, take a look. But I think are not 100% compatible.

By Wolverine_nl

Paragon (1160)

Wolverine_nl's picture

25-01-2017, 10:14

ok, that is cleared.

By DarkSchneider

Paladin (965)

DarkSchneider's picture

25-01-2017, 10:30

Confirmed, page 85, 4.2.5, it uses the stack.

Page 1/3
| 2 | 3