L'ISTC 5500 : Page technique.Le Zx81: Page technique.First Help to use Mess...DskCenter : Disk Multi-format Front-End for computers emulators.Usefull links...Bad News about emulators...Download ...Mess artworks informations ...Hard & Tweaks ...Silent Hunter 2 Page ...Return to Home page ...



XavSnap...

Personal Web Site.





Mess's Chistmas Leds !

No lighting Leds on Disc-tape feature...

No problems...

The "osd_set_leds" definition MIA in Mess .79 (check .84 release!)

It set on/off leds, without this function ... No leds

If you want add to a keyboard led effect, just pickup "osd_set_leds" definition in Mame Res. in Mess's Input.C

Mess is Poor in Leds effect ! Only one : "PCkeyboard.c" (Funny!)

You can now init leds statement everywhere !

Mess Problem Mess.79:



Mame.h (Flag definition)

******************************************************************

/Display state passed to the OSD layer for rendering/



#define LED_STATE_CHANGED 0x00000080

******************************************************************

... and ...

Mame.C(Trigger statement)

(...)

/* set the LED status */

if (leds_status != current_display.led_state)

{

current_display.led_state = leds_status;

current_display.changed_flags |= LED_STATE_CHANGED;

}

(...)

/*-------------------------------------------------

set_led_status - set the state of a given LED

-------------------------------------------------*/

void set_led_status(int num, int on)

{

if (on)

leds_status |= (1 << num);

else

leds_status &= ~(1 << num);

}

(...)

... and ...

Video.C(Led refresh call)

******************************************************************

// if the LEDs have changed, update them

if (display->changed_flags & LED_STATE_CHANGED)

osd_set_leds(display->led_state);

******************************************************************

That's all ...

But osd_set_leds anywhere !

To pickup and add:



input.C(Led setup in Mame 0.83)

******************************************************************

//============================================================

// osd_set_leds

//============================================================

void osd_set_leds(int state)

******************************************************************



Set_led_status(0, 0);// Led OFF !used in Mess! .79 -> pckeybrd.c !!!

set_led_status(1, 0);// Led OFF !used in Mess! .79 -> pckeybrd.c !!!

set_led_status(2, 0);// Led OFF !used in Mess! .79 -> pckeybrd.c !!!



(...)

// ???????????????????????????????

//Set_led_status(0, 1);// Led ON ? !unused in Mess! .79

//set_led_status(1, 1);// Led ON ? !unused in Mess! .79

//set_led_status(2, 1);// Led ON ? !unused in Mess! .79

// ???????????????????????????????



May be a Bug !

This function will be able to set Leds for alls stuff !

Computer power "on",tape, disc (A:,B:,C:) ...

Example: During reset ignition for CPC, you can check bios loading !

ROM_START(cpc6128fr)

set_led_status(1, 0);/* Set Led 2 OFF !*/

Set_led_status(0, 0);/* Set Led 1 OFF !*/

set_led_status(2, 0);/* Set Led 3 OFF !*/



/* this defines the total memory size - 64k ram, 16k OS, 16k BASIC, 16k DOS */

ROM_REGION(0x020000, REGION_CPU1,0)

/* load the os to offset 0x01000 from memory base */

ROM_LOAD("cpc6128fr.rom", 0x10000, 0x8000, CRC(1574923b))

set_led_status(0, 1);/*Set Led 1 ON !*/

ROM_LOAD("cpcados.rom", 0x18000, 0x4000, CRC(1fe22ecd))

set_led_status(1, 1);/*Set Led 2 ON !*/



/* optional Multiface hardware */

ROM_LOAD_OPTIONAL("multface.rom", 0x01c000, 0x02000, CRC(f36086de))

set_led_status(2, 1); /* Set Led 3 ON !*/

/* fake region - required by graphics decode structure */

/*ROM_REGION(0x0100,REGION_GFX1) */

set_led_status(1, 0);/* Set Led 2 OFF !*/

Set_led_status(0, 0);/* Set Led 1 OFF !*/

set_led_status(2, 0);/* Set Led 3 OFF !*/

ROM_END

Note : This update don't check if roms are really loaded ! You may add a conditional feature to had a visual checklist for optionals roms.

May be tested first, of course !

Bye and enjoy guys !

XavSnap.









>>>>Return to Home Page <<<<