mirror of
https://github.com/reactos/reactos.git
synced 2024-08-02 01:21:00 +00:00
Add some helpful debug output to LAYOUT parsing, and enable DoLAYOUT code. The tool is able to fully decode/parse the test.klc English US layout file!
svn path=/trunk/; revision=43950
This commit is contained in:
parent
7662e72971
commit
66afccbaeb
|
@ -890,9 +890,6 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
PLAYOUTENTRY Entry;
|
PLAYOUTENTRY Entry;
|
||||||
UCHAR CharacterType, LigatureChar;
|
UCHAR CharacterType, LigatureChar;
|
||||||
|
|
||||||
/* Only attempt this is Verbose is enabled (FOR DEBUGGING ONLY) */
|
|
||||||
if (!Verbose) return SkipLines();
|
|
||||||
|
|
||||||
/* Zero out the layout */
|
/* Zero out the layout */
|
||||||
memset(LayoutData, 0, sizeof(LAYOUT));
|
memset(LayoutData, 0, sizeof(LAYOUT));
|
||||||
|
|
||||||
|
@ -930,6 +927,7 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* One more */
|
/* One more */
|
||||||
|
DPRINT1("RAW ENTRY: [%x %s %s]\n", ScanCode, Token, Cap);
|
||||||
Entry++;
|
Entry++;
|
||||||
if (++ScanCodeCount >= 110)
|
if (++ScanCodeCount >= 110)
|
||||||
{
|
{
|
||||||
|
@ -988,6 +986,8 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
/* Get the virtual key from the entry */
|
/* Get the virtual key from the entry */
|
||||||
VirtualKey = getVKNum(Token);
|
VirtualKey = getVKNum(Token);
|
||||||
Entry->VirtualKey = VirtualKey;
|
Entry->VirtualKey = VirtualKey;
|
||||||
|
DPRINT1("ENTRY: [%x %x %x %s] with ",
|
||||||
|
Entry->VirtualKey, Entry->OriginalVirtualKey, Entry->ScanCode, Entry->Name);
|
||||||
|
|
||||||
/* Make sure it's valid */
|
/* Make sure it's valid */
|
||||||
if (VirtualKey == 0xFFFF)
|
if (VirtualKey == 0xFFFF)
|
||||||
|
@ -1024,6 +1024,7 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
State[6],
|
State[6],
|
||||||
State[7]);
|
State[7]);
|
||||||
Entry->StateCount = Count;
|
Entry->StateCount = Count;
|
||||||
|
DPRINT1("%d STATES: [", Count);
|
||||||
|
|
||||||
/* Check if there are less than 2 states */
|
/* Check if there are less than 2 states */
|
||||||
if ((Count < 2) && (FullEntry))
|
if ((Count < 2) && (FullEntry))
|
||||||
|
@ -1037,6 +1038,7 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
for (i = 0; i < Count; i++)
|
for (i = 0; i < Count; i++)
|
||||||
{
|
{
|
||||||
/* Check if this is an undefined state */
|
/* Check if this is an undefined state */
|
||||||
|
DPRINT1("%s ", State[i]);
|
||||||
if (!strcmp(State[i], "-1"))
|
if (!strcmp(State[i], "-1"))
|
||||||
{
|
{
|
||||||
/* No data for this state */
|
/* No data for this state */
|
||||||
|
@ -1061,6 +1063,7 @@ DoLAYOUT(IN PLAYOUT LayoutData,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check for sanity checks */
|
/* Check for sanity checks */
|
||||||
|
DPRINT1("]\n");
|
||||||
if (SanityCheck)
|
if (SanityCheck)
|
||||||
{
|
{
|
||||||
/* Not yet handled... */
|
/* Not yet handled... */
|
||||||
|
|
Loading…
Reference in a new issue