File:  [RetroPC.NET] / xmil / keystat.tbl
Revision 1.3: download - view: text, annotated - select for diffs
Fri Feb 4 15:42:07 2005 JST (20 years, 8 months ago) by yui
Branches: MAIN
CVS tags: HEAD
RetroPC CVS restarting 2005/02/04 (T.Yui)


static const UINT8 keytbl[6][0x80] = {
		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	normal
		{	0x1b, '1', '2', '3', '4', '5', '6', '7',
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			 '8', '9', '0', '-', '^',0x5c,0x08,0x09,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i',
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			 'o', 'p', '@', '[',0x0d, 'a', 's', 'd',
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			 'f', 'g', 'h', 'j', 'k', 'l', ';', ':',
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			 ']', 'z', 'x', 'c', 'v', 'b', 'n', 'm',
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			 ',', '.', '/', '_',0x20,0xfe,0x06,0x02,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x12,0x08,0x1e,0x1d,0x1c,0x1f,0x0b,0xc3,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			 '-', '/', '7', '8', '9',0x2a, '4', '5',
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			 '6', '+', '1', '2', '3', '=', '0', ',',
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			 '.',0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x13,0x00, 'q', 'r', 's', 't', 'u',0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	shift
		{	0x1b, '!',0x22, '#', '$',0x25, '&',0x27,
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			 '(', ')', '0', '=',0x60,0x7c,0x12,0x09,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I',
		//	  n,  o,  ,  m, ret,  `,  r,  c,	0x18
			 'O', 'P',0x7e, '{',0x0d, 'A', 'S', 'D',
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			 'F', 'G', 'H', 'J', 'K', 'L', '+',0x2a,
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			 '}', 'Z', 'X', 'C', 'V', 'B', 'N', 'M',
		//	  C,  D,  ^,  Q, SPC,XFER,RLUP,RLDN,	0x30
			 '<', '>',0x3f, '_',0x20,0xff,0x06,0x02,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x12,0x08,0x1e,0x1d,0x1c,0x1f,0x0c,0xc5,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			 '-', '/', '7', '8', '9',0x2a, '4', '5',
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			 '6', '+', '1', '2', '3', '=', '0', ',',
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			 '.',0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x03,0x00, 'v', 'w', 'x', 'y', 'z',0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	grph
		{	0x00,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			0xf8,0xf9,0xfa,0x8c,0x8b,0xfb,0x00,0x00,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			0xf0,0x8d,0x8a,0xfc,0x00,0x7f,0xe9,0xea,
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			0xeb,0xec,0xed,0xee,0xef,0x8e,0x89,0xfd,
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			0xe8,0x80,0x81,0x82,0x83,0x84,0x85,0x86,
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			0x87,0x88,0xfe,0xff,0x00,0xff,0x00,0x00,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x00,0x00,0x00,0x00,0x00,0x00,0x0b,0x00,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			0x9c,0x9e,0x9a,0x93,0x97,0x9b,0x95,0x96,
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			0x94,0x9d,0x99,0x92,0x98,0x90,0x8f,0x9f,
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			0x91,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//      ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	ctrl
		{	0x1b, '1', '2', '3', '4', '5', '6', '7',
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			 '8', '9', '0',0x00,0x1e,0x1c,0x08,0x09,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			0x11,0x17,0x05,0x12,0x14,0x19,0x15,0x09,
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			0x0f,0x10, '@',0x1b,0x0d,0x01,0x13,0x04,
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			0x06,0x07,0x08,0x0a,0x0b,0x0c, ';', ':',
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			0x1d,0x1a,0x18,0x03,0x16,0x02,0x0e,0x0d,
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			0x00,0x00,0x00,0x1f, ' ',0xff,0x06,0x02,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x12,0x08,0x1e,0x1d,0x1c,0x1f,0x0b,0xc5,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			 '-', '/', '7', '8', '9',0x2a, '4', '5',
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			 '6', '+', '1', '2', '3', '=', '0', ',',
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			 '.',0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x13,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	kana
		{	0x1b, '', '', '', '', '', '', '',
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			 '', '', '', '', '', '',0x08,0x09,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			 '', '', '', '', '', '', '', '',
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			 '', '', '', '',0x0d, '', '', '',
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			 '', '', '', '', '', '', '', '',
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			 '', '', '', '', '', '', '', '',
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			 '', '', '', '',0x20,0xfe,0x06,0x02,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x12,0x08,0x1e,0x1d,0x1c,0x1f,0x0b,0xc5,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			 '-', '/', '7', '8', '9',0x2a, '4', '5',
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			 '6', '+', '1', '2', '3', '=', '0', ',',
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			 '.',0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x13,0x00, 'q', 'r', 's', 't', 'u',0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00	kana+shift
		{	0x1b, '', '', '', '', '', '', '',
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			 '', '', '', '', '', '',0x12,0x09,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			 '', '', '', '', '', '', '', '',
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			 '', '', '', '',0x0d, '', '', '',
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			 '', '', '', '', '', '', '', '',
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			 '', '', '', '', '', '', '', '',
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			 '', '', '', '',0x20,0xfe,0x06,0x02,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x12,0x08,0x1e,0x1d,0x1c,0x1f,0x0b,0xc5,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			 '-', '/', '7', '8', '9',0x2a, '4', '5',
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			 '6', '+', '1', '2', '3', '=', '0', ',',
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			 '.',0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x03,0x00, 'v', 'w', 'x', 'y', 'z',0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}};

static const UINT8 keyflag[0x80] = {
		//	 ESC,  P,  Q,  R,  S,  T,  U,  V,	0x00
			0x27,0x26,0x00,0x00,0x00,0x00,0x00,0x00,
		//	  W,  X,  O,  |,  O,  , BS , TAB,	0x08
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x22,
		//	  p,  v,  d,  q,  s,  x,  t,  h,	0x10
			0x37,0x36,0x35,0x00,0x00,0x00,0x00,0x00,
		//	  n,  o,  ,  m, Ret,  `,  r,  c,	0x18
			0x00,0x00,0x00,0x00,0x20,0x34,0x00,0x33,
		//	  e,  f,  g,  i,  j,  k,  G,  F,	0x20
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	  n,  y,  w,  b,  u,  a,  m,  l,	0x28
			0x00,0x32,0x31,0x30,0x00,0x00,0x00,0x00,
		//	  C,  D,  ^,  Q, SPC,XFER,R UP,RDWN,	0x30
			0x00,0x00,0x00,0x00,0x21,0x00,0x00,0x00,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP,	0x38
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>,	0x40
			0xa5,0x00,0xaf,0xac,0xaa,0xa3,0xae,0x80,
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>,	0x48
			0xa9,0xa4,0xad,0xab,0xa8,0x00,0x80,0x00,
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,    ,	0x50
			0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,HOME,    ,	0x58
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6,	0x60
			0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,
		//	 f.7, f.8, f.9,f.10,    ,    ,    ,    ,	0x68
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		//	SHFT,CAPS,Ji,GRPH,CTRL,    ,    ,    ,	0x70
			0x42,0x48,0x44,0x50,0x41,0x00,0x00,0x00,
		//	    ,    ,    ,    ,    ,    ,    ,    ,	0x78
			0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

static const UINT8 joyflag[0x80] = {
		//	 ESC,  P,  Q,  R,  S,  T,  U,  V		; 00h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	  W,  X,  O,  |,  O,  ,  BS, TAB		; 08h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	  p,  v,  d,  q,  s,  x,  t,  h		; 10h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	  n,  o,  ,  m, Ret,  `,  r,  c		; 18h
			   0,   0,   0,   0,0x45,   0,   0,   0,
		//	  e,  f,  g,  i,  j,  k,  G,  F		; 20h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//    n,  y,  w,  b,  u,  a,  m,  l		; 28h
			   0,0x45,0x46,0x47,0x44,   0,   0,   0,
		//    C,  D,  ^,  Q, SPC,XFER,RLUP,RLDN		; 30h
			   0,   0,   0,   0,0x46,   0,   0,   0,
		//	 INS, DEL,  ,  ,  ,  ,HMCR,HELP		; 38h
			   0,   0,0x40,0x42,0x43,0x41,   0,   0,
		//	<|>,<^>,<V>,<W>,<X>,<>,<S>,<T>		; 40h
			   0,   0,   0,0x40,   0,   0,0x42,   0,
		//	<U>,<{>,<P>,<Q>,<R>,<>,<O>,<C>		; 48h
			0x43,   0,   0,0x41,   0,   0,   0,   0,
		//	<D>,NFER,vf.1,vf.2,vf.3,vf.4,vf.5,   		; 50h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	    ,    ,    ,    ,    ,    ,HOME,   		; 58h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	STOP,COPY, f.1, f.2, f.3, f.4, f.5, f.6		; 60h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	 f.7, f.8, f.9, f10,    ,    ,    ,   		; 68h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	 SFT,CAPS,KANA,GRPH,CTRL,    ,    ,   		; 70h
			   0,   0,   0,   0,   0,   0,   0,   0,
		//	    ,    ,    ,    ,    ,RSFT,    ,   		; 78h
			   0,   0,   0,   0,   0,   0,   0,   0};


RetroPC.NET-CVS <cvs@retropc.net>