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

Página 16/26
9 | 10 | 11 | 12 | 13 | 14 | 15 | | 17 | 18 | 19 | 20 | 21

Por ToriHino

Paladin (806)

Imagen del 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

Por ducasp

Hero (611)

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

Por fregarni

Rookie (21)

Imagen del fregarni

23-03-2020, 13:04

Hello,

SDCC 3.6 as you recommended.

Por Bengalack

Hero (660)

Imagen del 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

Por ericb59

Paragon (1087)

Imagen del 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

Por Bengalack

Hero (660)

Imagen del 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

Por ducasp

Hero (611)

Imagen del 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

Por ericb59

Paragon (1087)

Imagen del 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

Por ToriHino

Paladin (806)

Imagen del ToriHino

06-04-2020, 17:34

Even within half an hour Cool

Por ericb59

Paragon (1087)

Imagen del ericb59

06-04-2020, 19:10

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

Página 16/26
9 | 10 | 11 | 12 | 13 | 14 | 15 | | 17 | 18 | 19 | 20 | 21