MSX FUSION-C, Talking about bugs, errors, mistakes

صفحة 16/26
9 | 10 | 11 | 12 | 13 | 14 | 15 | | 17 | 18 | 19 | 20 | 21

بواسطة ToriHino

Paladin (926)

صورة ToriHino

18-03-2020, 12:26

ericb59 wrote:

Did you notice benefits in in executable perfomances or in executable file size ?

Not directly, executable is about the same size, i did no specific performance measurements.

For me the biggest benefit is the feature:
Intermingling of declarations and statements (ISO C99)
But this was already introduced in release 3.8.0

بواسطة ducasp

Paladin (712)

صورة ducasp

20-03-2020, 14:20

ericb59 wrote:

Did you notice benefits in in executable perfomances or in executable file size ?

To be really honest to you, I've never thought on this. In general, my code fits well within the size constraints for DOS applications (in fact, far from reaching it) so never worried about file size. In regards to performance, did not find any discernible difference to my eyes/general feeling.

بواسطة fregarni

Resident (39)

صورة fregarni

23-03-2020, 13:04

Hello,

SDCC 3.6 as you recommended.

بواسطة Bengalack

Paladin (804)

صورة Bengalack

06-04-2020, 13:21

I use fusion-c 1.2 (and SDCC 4.0 atm). Does GetKeyMatrix really work?

char GetKeyMatrix(char line)

This code

    printf("%u \r\n", GetKeyMatrix( 0 ) );
    printf("%u \r\n", GetKeyMatrix( 1 ) );
    printf("%u \r\n", GetKeyMatrix( 2 ) );
    printf("%u \r\n", GetKeyMatrix( 3 ) );
    printf("%u \r\n", GetKeyMatrix( 4 ) );
    printf("%u \r\n", GetKeyMatrix( 5 ) );
    printf("%u \r\n", GetKeyMatrix( 6 ) );
    printf("%u \r\n", GetKeyMatrix( 7 ) );
    printf("%u \r\n", GetKeyMatrix( 8 ) );
    printf("%u \r\n", GetKeyMatrix( 9 ) );
    printf("%u \r\n", GetKeyMatrix( 10 ) );

gives me this (with no keys pressed).

64
65
66
67
68
69
70
71
72
73
74

I just wanted to check for the status, and somehow stray away from the built-in keypress-pause and stuff that is happening behind the scenes when pressing a key. But the above values does not help me

بواسطة ericb59

Paragon (1126)

صورة ericb59

06-04-2020, 13:37

Hi Bengalack,
it must work well.

Anyway, in version 1.3 I've replaced this ASM function by something more simple.

add this to your program, you must have a better result I think.

#define GetKeyMatrix( data ) (*(char *)((0xFBE5+ data)))

- Change the name of the function into something else to avoid conflits with previous function.
- Use it in the same way as the original GetKeyMatrix function

بواسطة Bengalack

Paladin (804)

صورة Bengalack

06-04-2020, 14:35

Thanks for the quick reply - this new define works nicely. Thumbs up Smile

Currently developing on openmsx/Philips_NMS_8255, and the previous version seems to have some serious issues Smile

بواسطة ducasp

Paladin (712)

صورة ducasp

06-04-2020, 14:38

Bengalack wrote:

Thanks for the quick reply - this new define works nicely. Thumbs up Smile

Currently developing on openmsx/Philips_NMS_8255, and the previous version seems to have some serious issues Smile

It doesn't work on BlueMSX as well, did not bother checking on my SM-X... Using the system variable directly is much faster and work wonders, so Eric's suggestion / implementation for Fusion C 1.3 is really sweet. Wink

بواسطة ericb59

Paragon (1126)

صورة ericb59

06-04-2020, 16:47

Ok good Big smile

I think I will publish Fusion-C 1.3 before the end of the week.
There are many improvements in v1.3...
Before that, to overcome the confinement we endure, I launched myself a little challenge yesterday.
Here in video.
https://www.youtube.com/watch?v=WlOnX2uqRxE&t=32s

بواسطة ToriHino

Paladin (926)

صورة ToriHino

06-04-2020, 17:34

Even within half an hour Cool

بواسطة ericb59

Paragon (1126)

صورة ericb59

06-04-2020, 19:10

the video is accelerated.
I did it in 45 minutes.

صفحة 16/26
9 | 10 | 11 | 12 | 13 | 14 | 15 | | 17 | 18 | 19 | 20 | 21