Previous 15994 Revisions Next

r8697 Tuesday 3rd August, 2010 at 12:09:46 UTC by Roberto Zandonà
[C64] preliminary crosshair for light gun
[src/mess/machine]cbm.c cbmipt.c
[src/mess/video]vic6567.c

src/mess/machine/cbmipt.c
r8696r8697
156156   PORT_CATEGORY_ITEM( 0x03, "Mouse (Non Proportional) 1350", 13 )
157157   PORT_CATEGORY_ITEM( 0x04, "Lightpen", 14 )
158158//  PORT_CATEGORY_ITEM( 0x05, "Koala Pad", 15 )
159   PORT_CATEGORY_ITEM( 0x06, "Lightgun", 14 )
159   PORT_CATEGORY_ITEM( 0x06, "Lightgun", 16 )
160160   PORT_CATEGORY_ITEM( 0x07, "No Device Connected", 17 )
161161   PORT_CATEGORY_CLASS( 0x70, 0x00, "Gameport B" )
162162   PORT_CATEGORY_ITEM( 0x00, DEF_STR( Joystick ), 20 )
r8696r8697
235235
236236   PORT_START("LIGHTX")
237237   PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_X) PORT_NAME("Lightpen X Axis") PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(1) PORT_CATEGORY(14)
238   /* PORT_BIT( 0x1ff,0,IPT_PADDLE) PORT_SENSITIVITY(30) PORT_KEYDELTA(2) PORT_MINMAX(0,320-1) PORT_CODE_DEC(KEYCODE_LEFT) PORT_CODE_INC(KEYCODE_RIGHT) PORT_CODE_DEC(JOYCODE_X_LEFT_SWITCH) PORT_CODE_INC(JOYCODE_X_RIGHT_SWITCH) PORT_PLAYER(1) */
239238
240239   PORT_START("LIGHTY")
241240   PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_Y) PORT_NAME("Lightpen Y Axis") PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(30) PORT_KEYDELTA(20) PORT_PLAYER(1) PORT_CATEGORY(14)
242   /* PORT_BIT( 0xff,0,IPT_PADDLE) PORT_SENSITIVITY(30) PORT_KEYDELTA(2) PORT_MINMAX(0,200-1) PORT_CODE_DEC(KEYCODE_UP) PORT_CODE_INC(KEYCODE_DOWN) PORT_CODE_DEC(JOYCODE_Y_UP_SWITCH) PORT_CODE_INC(JOYCODE_Y_DOWN_SWITCH) PORT_PLAYER(2) */
243241
244242   PORT_START("OTHER")
245243   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON1) PORT_NAME("Paddle 1 Button") PORT_CATEGORY(11) PORT_CODE(KEYCODE_LCONTROL) PORT_CODE(JOYCODE_BUTTON1)
src/mess/machine/cbm.c
r8696r8697
2323
2424static TIMER_CALLBACK( lightpen_tick )
2525{
26   if ((input_port_read(machine, "CTRLSEL") & 0x07) == 0x04)
26   if (((input_port_read(machine, "CTRLSEL") & 0x07) == 0x04) || ((input_port_read(machine, "CTRLSEL") & 0x07) == 0x06))
2727   {
2828      /* enable lightpen crosshair */
2929      crosshair_set_screen(machine, 0, CROSSHAIR_SCREEN_ALL);
src/mess/video/vic6567.c
r8696r8697
205205#define VIC6569_Y_BEGIN         -6
206206#define VIC2_X_BEGIN         ((vic2->type == VIC6569 || vic2->type == VIC8566) ? VIC6569_X_BEGIN : VIC6567_X_BEGIN)
207207#define VIC2_Y_BEGIN         ((vic2->type == VIC6569 || vic2->type == VIC8566) ? VIC6569_Y_BEGIN : VIC6567_Y_BEGIN)
208#define VIC2_X_VALUE         ((LIGHTPEN_X_VALUE + VIC2_X_BEGIN + VIC2_MAME_XPOS))
209#define VIC2_Y_VALUE         ((LIGHTPEN_Y_VALUE + VIC2_Y_BEGIN + VIC2_MAME_YPOS))
208#define VIC2_X_VALUE         ((LIGHTPEN_X_VALUE + 38) / 2)
209#define VIC2_Y_VALUE         ((LIGHTPEN_Y_VALUE +  6)    )
210210
211211#define VIC2E_K0_LEVEL         (vic2->reg[0x2f] & 0x01)
212212#define VIC2E_K1_LEVEL         (vic2->reg[0x2f] & 0x02)

Previous 15994 Revisions Next


© 1998-2018 The MESS Team