Clonning an IR remote control Canon WL-V5. I'm in a mess.

Hi friends,
First of all I'm sorry for my English.

I'm triying to clone an IR remote control for a Canon VC-C4 camera.
I don`t have control with me.

I was looking for the codes and I found some RAWCODES (not for VC-C4, but VC-C3) like this one:

RAWCODE 1: 0000 006d 0022 0002 0156 00ab 0016 0040 0015 0015 0016 0015 0016 0015 0015 0015 0016 0015 0016 0015 0015 0040 0016 0015 0015 0040 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0015 0015 0040 0016 0015 0015 0040 0016 0015 0015 0040 0016 0015 0015 0015 0016 0015 0016 0015 0015 0040 0016 0015 0015 0040 0016 0015 0015 0040 0016 0040 0016 0040 0015 06a0 0156 0056 0016 0e57

How can I send this code to the camera?
Must I need to convert first to DECIMAL ?

One friend said me that I must convert all these hex numbers to decimal, create an array and send it to the camera using the sentence below, but it doesn`t work:

unsigned int S_pwr3[76]={0, 109, 34, 2, 341, 172, 21, 64, 22, 21, 21, 21, 22, 21, 22, 21, 21,21, 22, 21, 22, 64, 22, 21, 22, 64, 22, 64, 21, 21, 22, 21, 22, 21, 21, 21, 22, 21, 22, 62, 22, 64, 21, 64, 22, 64, 22, 21, 22, 21, 21, 21, 22, 21, 22, 21, 21, 21, 22, 21, 22, 21, 21, 64, 22, 64, 22, 64, 21, 64, 22, 1696, 341, 86, 22, 3672};
    for (int txCount = 0; txCount < REPEAT_TX; txCount++) { 
     irsend.sendRaw(S_pwr3,76,38); // Change to match your remote protocol
    delay(500);            // El numero de enmedio son los bits del array

Can you help me ?

Hi, use the camera in your phone to check if IR led is working.

Tom..... :slight_smile:

TomGeorge:
Hi, use the camera in your phone to check if IR led is working.

Tom..... :slight_smile:

Try both camera if you get no joy as some primary cameras on phones don't detect IR but maybe the second one will. I have a 4S and the camera on the back does not detect remote control IR diodes but the forward facing one does.

The format you posted is called PRONTO IR format!
It turns out it is a standard NEC 32 bit signal @ 38kHz modulation.

Here it is in a more friendly format (converted and also cleaned up):

Raw (71): 9000,-4500,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-1690,560,-1690,560,-1690,560,-44096,9000,-2236,560,-95446

You should be able to send it using IRremote or IRLib, using sendRAW or more simply below.

The Hex code is:
Row: 1
Hex: 8160A857
Binary:
10000001 01100000 10101000 01010111

irsend.sendNEC(0x8160A857,32);
[b]Do you know the function of that signal?
[/b]

AnalysIR:
The format you posted is called PRONTO IR format!
It turns out it is a standard NEC 32 bit signal @ 38kHz modulation.

Here it is in a more friendly format (converted and also cleaned up):

Raw (71): 9000,-4500,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-560,560,-560,560,-560,560,-1690,560,-560,560,-1690,560,-560,560,-1690,560,-1690,560,-1690,560,-44096,9000,-2236,560,-95446

You should be able to send it using IRremote or IRLib, using sendRAW or more simply below.

The Hex code is:
Row: 1
Hex: 8160A857
Binary:
10000001 01100000 10101000 01010111

irsend.sendNEC(0x8160A857,32);
[b]Do you know the function of that signal?

[/b]

Thank you for your reply.
A friend give me an old camera called CANON VC-C4 but I haven`t got the IR Remote Control which is WL-V5.

I can`t use the camera functions like zoom/pan/till.

I haven`t found the original Canon WL-V5 codes but surfing on the website ´remotecentral.com´I found the IR codes for a Canon VC-C3.

It was imposible to find the codes for WL-V5 remote, and I'm not sure if the Canon VC-C3 codes will work, but in any case I need to try it because I have not other way.

I would like to know how can I convert all the CANON VC-C3 IR learned codes (34) from Pronto Format to HEX, like you did, for use with IRSend Arduino Library.

I hope I can do it!

RemoteCentral web page codes for CV-C3 are attached into the file ' codes.pdf '.
The previous codes converted to hex "one to one" and into an array are attached into the file 'array codes.pdf´

Can you help me, please ?

Regards from Spain and sorry for my english.

array codes.pdf (17 KB)

codes.pdf (42.6 KB)

An explanation of the Pronto format/syntax is available on remotecentral.

You may find some tools online to do the conversion for you. I used (our own) AnalysIR.

Happy to convert one or 2 signals for you, but 32 is too much.

Did the signal I posted work?

AnalysIR, thanks for your time.

The signal you convert for me works OK.
The camera was moving at the left.

I think that the codes probably will run OK.

The big problem now is, how can I do the conversión by myself ?

Can you explain me what to do?

I have the .cff file with the codes.

Regards.

You really have to spend some time working it out for yourself. I don't think you will find many to do all the work for you.

I tried 2 more signals for you and got:

8160A857 - previous signal
8160B04F
816048B7

You may notice that the 8160 is fixed in each signal & the underlined byte is always the inverse of the last byte.
So now you know there are only 256 possible signal values (actually 253 + the 3 above) of which 20+ are valid.

A8 => 1010 1000 in Binary
57 => 0101 0111 (is the inverse of the above)

0xA8 = 0xFF-0x57

You can write a sketch to try out all possible signals, printing each one out & leave a 5 second gap to allow you to write down the ones that work.

Alternatively, follow the suggestions in my previous post.

Let us know how you get on & post your results (signal code & function) so others can benefit, in future.

You're the BOSS !

I'm going to investigate how to make the sketch, but in any case, I can calculate it by hand, and later apply your formula:

A8 => 1010 1000 in Binary
57 => 0101 0111 (is the inverse of the above)

0xA8 = 0xFF-0x57

I hope it works ok !

Tell you later.

Many thanks for your explanation.

Rokiee:
I'm going to investigate how to make the sketch, but in any case, I can calculate it by hand, and later apply your formula:

When you want to write the sketch to do it start with looking at XOR. XOR a byte value with 0xFF will invert all the bits.

Original code:

0000 006d 0022 0002 0156 00ab 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0015 0015 0015 0016 0040 0015 0015 0016 0040 0015 0040 0016 0015 0015 0015 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0040 0016 0040 0015 0040 0016 0040 0016 06a0 0156 0056 0015 0e58

My result (HEX):

816050AF

I think it's right.

I did it by hand thanks to my "forocoches" friend Astü (+NO HOMO).

I´m going to convert the 32 codes and I will post for others if they need.

PD: Must I send to the cam each code twice or once ? I read about NEC portocol: "Address and command are transmitted twice for reliability".

Many thanks to AnalysIR , Astü (forocoches.com) and Riva (for XOR instruction).

Close, but that signal is as follows:

Row: 1
Hex: 81060AF5
Binary:
10000001 00000110 00001010 11110101

81060AF5 vs
816050AF

must be a trivial error!

UPDATE: see later post with correction

AnalysIR:
Close, but that signal is as follows:

Row: 1

Hex: 81060AF5
Binary:
10000001 00000110 00001010 11110101



81060AF5 vs
816050AF

must be a trivial error!

OMG !!!!

But you told me: "You may notice that the 8160 is fixed in each signal..."

Why in this case is 8106 ?

"Hex: 81060AF5
Binary:
10000001 00000110 00001010 11110101[/code]
81060AF5 vs
816050AF "

I`m crazy !!
I need your tool !

UPDATE: see later post with correction
I don't know, it may be that your source of signals isnt 100% or that there are other patterns in the signals.

Also, my initial assesment was based on 3 signals with an identical 8160 at the start.

You can see from your manual attempt, that all the numbers are the same but in different order, so you are close with your method.

Might be simplest just to write some code to convert the pronto format.

Another way of looking at it is:

0016 0040 is binary 1
0016 0015 is binary 0

so starting from the 7th position you should be able to decode it manually.

...ignore the last 2 or 6 values (i.e. you should stop once you get 32 bits)

treat any value +/-2 as the same (so 0015 is the same as 0016)

Have fun!

Yes,this was exactly what Is did, but the final result was wrong.

Just did this:

Orginal code (76)

0000 006d 0022 0002 0156 00ab 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0015 0015 0015 0016 0040 0015 0015 0016 0040 0015 0040 0016 0015
0015 0015 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0040 0016 0040 0015 0040 0016 0040 0016 06a0 0156 0056 0015 0e58

I cleaned the code by erasing the first and last six numbers (0000 006d 0022 0002 0156 00ab ; 0016 06a0 0156 0056 0015 0e58) and I got the 32 bits.

0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0015 0015 0015 0016 0040 0015 0015 0016 0040 0015 0040 0016 0015
0015 0015 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0015 0015 0015 0016 0015 0016 0040 0016 0015 0016 0040 0016 0015 0016 0040 0016 0040 0015 0040 0016 0040

I began the conversion, and while ‘ 0016 0040 or 0015 0040’ are equal to 1, ‘ 0016 0015 or 0015 0015 ‘ are 0, getting the next number:

10000001011000000101000010101111 (BIN)
816050AF (HEX)

I can’t find the mistake, but as you told me, the result is wrong.

Do you know where is the mistake ?
Regards.

UPSTAIRS

ooops.....

It looks like I may have had 'bit flipping' set on my system, when I decoded that last signal of yours. (I was in the middle of some AC signals when doing it).

So its safe to assume that your manual approach is OK. I will verify later and post back if otherwise.

Apologies about that.

EDIT: Yes I have verified that I had the wrong setting turned on, so the signal is OK.

We decided to add a bulk import feature to AnalysIR today & decided to use your signals as a test.
I have included all of your signals below (2 of them were bad, so I left them out)

...enjoy!

It would be great if you could post back on whether they work and what the associated camera functions are.

/*
Automatically Generated by AnalysIR - Batch Export Utility
Registered to: xxxxxxxx
Session History
Type : Key : Value : Bits
0 : NEC :  : 8160A857 : 32
1 : NEC :  : 81607887 : 32
2 : NEC :  : 8160B847 : 32
3 : NEC :  : 816038C7 : 32
4 : NEC :  : 816018E7 : 32
5 : NEC :  : 8160F807 : 32
6 : NEC :  : 8160A05F : 32
7 : NEC :  : 816020DF : 32
8 : NEC :  : 8160C03F : 32
9 : NEC :  : 816040BF : 32
10 : NEC :  : 8160807F : 32
11 : NEC :  : 81608877 : 32
12 : NEC :  : 8160D827 : 32
13 : NEC :  : 816058A7 : 32
14 : NEC :  : 8160C837 : 32
15 : NEC :  : 816010EF : 32
16 : NEC :  : 8160906F : 32
17 : NEC :  : 816000FF : 32
18 : NEC :  : 8160E01F : 32
19 : NEC :  : 81606897 : 32
20 : NEC :  : 816008F7 : 32
21 : NEC :  : 8160B04F : 32
22 : NEC :  : 8160F00F : 32
23 : NEC :  : 8160708F : 32
24 : NEC :  : 816030CF : 32
25 : NEC :  : 816028D7 : 32
26 : NEC :  : 816048B7 : 32
27 : NEC :  : 81609867 : 32
28 : NEC :  : 816050AF : 32
29 : NEC :  : 8160D02F : 32
*/

// NB: Not all protocols are supported by IRremote or IRLib. You may need to edit the code below manually
// Automatically Generated by AnalysIR for xxxxxxxx, visit http://www.AnalysIR.com or email info@....... for further details
int khz=38; //NB Change this default value as neccessary to the correct modulation frequency
irsend.sendNEC(0x8160A857, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x81607887, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160B847, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816038C7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816018E7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160F807, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160A05F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816020DF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160C03F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816040BF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160807F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x81608877, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160D827, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816058A7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160C837, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816010EF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160906F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816000FF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160E01F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x81606897, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816008F7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160B04F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160F00F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160708F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816030CF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816028D7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816048B7, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x81609867, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x816050AF, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:  
irsend.sendNEC(0x8160D02F, 32); //AnalysIR Batch Export (IRremote) // AnalysIR IR Protocol: NEC, Key:

Much easier when automated :slight_smile:

Thanks you very much!

Some of these codes are OK, but just now I'm working to discover others signals with the initial 8160 .

I only have 256 to test.

When I finish will come back to show all the codes found.

Regards !

Sounds like some of them did not work....pity.

Here are all the 256 possible combinations, in case you don't have them (some of which you already have)

816000FF     0x816000FF
816001FE     0x816001FE
816002FD     0x816002FD
816003FC     0x816003FC
816004FB     0x816004FB
816005FA     0x816005FA
816006F9     0x816006F9
816007F8     0x816007F8
816008F7     0x816008F7
816009F6     0x816009F6
81600AF5     0x81600AF5
81600BF4     0x81600BF4
81600CF3     0x81600CF3
81600DF2     0x81600DF2
81600EF1     0x81600EF1
81600FF0     0x81600FF0
816010EF     0x816010EF
816011EE     0x816011EE
816012ED     0x816012ED
816013EC     0x816013EC
816014EB     0x816014EB
816015EA     0x816015EA
816016E9     0x816016E9
816017E8     0x816017E8
816018E7     0x816018E7
816019E6     0x816019E6
81601AE5     0x81601AE5
81601BE4     0x81601BE4
81601CE3     0x81601CE3
81601DE2     0x81601DE2
81601EE1     0x81601EE1
81601FE0     0x81601FE0
816020DF     0x816020DF
816021DE     0x816021DE
816022DD     0x816022DD
816023DC     0x816023DC
816024DB     0x816024DB
816025DA     0x816025DA
816026D9     0x816026D9
816027D8     0x816027D8
816028D7     0x816028D7
816029D6     0x816029D6
81602AD5     0x81602AD5
81602BD4     0x81602BD4
81602CD3     0x81602CD3
81602DD2     0x81602DD2
81602ED1     0x81602ED1
81602FD0     0x81602FD0
816030CF     0x816030CF
816031CE     0x816031CE
816032CD     0x816032CD
816033CC     0x816033CC
816034CB     0x816034CB
816035CA     0x816035CA
816036C9     0x816036C9
816037C8     0x816037C8
816038C7     0x816038C7
816039C6     0x816039C6
81603AC5     0x81603AC5
81603BC4     0x81603BC4
81603CC3     0x81603CC3
81603DC2     0x81603DC2
81603EC1     0x81603EC1
81603FC0     0x81603FC0
816040BF     0x816040BF
816041BE     0x816041BE
816042BD     0x816042BD
816043BC     0x816043BC
816044BB     0x816044BB
816045BA     0x816045BA
816046B9     0x816046B9
816047B8     0x816047B8
816048B7     0x816048B7
816049B6     0x816049B6
81604AB5     0x81604AB5
81604BB4     0x81604BB4
81604CB3     0x81604CB3
81604DB2     0x81604DB2
81604EB1     0x81604EB1
81604FB0     0x81604FB0
816050AF     0x816050AF
816051AE     0x816051AE
816052AD     0x816052AD
816053AC     0x816053AC
816054AB     0x816054AB
816055AA     0x816055AA
816056A9     0x816056A9
816057A8     0x816057A8
816058A7     0x816058A7
816059A6     0x816059A6
81605AA5     0x81605AA5
81605BA4     0x81605BA4
81605CA3     0x81605CA3
81605DA2     0x81605DA2
81605EA1     0x81605EA1
81605FA0     0x81605FA0
8160609F     0x8160609F
8160619E     0x8160619E
8160629D     0x8160629D
8160639C     0x8160639C
8160649B     0x8160649B
8160659A     0x8160659A
81606699     0x81606699
81606798     0x81606798
81606897     0x81606897
81606996     0x81606996
81606A95     0x81606A95
81606B94     0x81606B94
81606C93     0x81606C93
81606D92     0x81606D92
81606E91     0x81606E91
81606F90     0x81606F90
8160708F     0x8160708F
8160718E     0x8160718E
8160728D     0x8160728D
8160738C     0x8160738C
8160748B     0x8160748B
8160758A     0x8160758A
81607689     0x81607689
81607788     0x81607788
81607887     0x81607887
81607986     0x81607986
81607A85     0x81607A85
81607B84     0x81607B84
81607C83     0x81607C83
81607D82     0x81607D82
81607E81     0x81607E81
81607F80     0x81607F80
8160807F     0x8160807F
8160817E     0x8160817E
8160827D     0x8160827D
8160837C     0x8160837C
8160847B     0x8160847B
8160857A     0x8160857A
81608679     0x81608679
81608778     0x81608778
81608877     0x81608877
81608976     0x81608976
81608A75     0x81608A75
81608B74     0x81608B74
81608C73     0x81608C73
81608D72     0x81608D72
81608E71     0x81608E71
81608F70     0x81608F70
8160906F     0x8160906F
8160916E     0x8160916E
8160926D     0x8160926D
8160936C     0x8160936C
8160946B     0x8160946B
8160956A     0x8160956A
81609669     0x81609669
81609768     0x81609768
81609867     0x81609867
81609966     0x81609966
81609A65     0x81609A65
81609B64     0x81609B64
81609C63     0x81609C63
81609D62     0x81609D62
81609E61     0x81609E61
81609F60     0x81609F60
8160A05F     0x8160A05F
8160A15E     0x8160A15E
8160A25D     0x8160A25D
8160A35C     0x8160A35C
8160A45B     0x8160A45B
8160A55A     0x8160A55A
8160A659     0x8160A659
8160A758     0x8160A758
8160A857     0x8160A857
8160A956     0x8160A956
8160AA55     0x8160AA55
8160AB54     0x8160AB54
8160AC53     0x8160AC53
8160AD52     0x8160AD52
8160AE51     0x8160AE51
8160AF50     0x8160AF50
8160B04F     0x8160B04F
8160B14E     0x8160B14E
8160B24D     0x8160B24D
8160B34C     0x8160B34C
8160B44B     0x8160B44B
8160B54A     0x8160B54A
8160B649     0x8160B649
8160B748     0x8160B748
8160B847     0x8160B847
8160B946     0x8160B946
8160BA45     0x8160BA45
8160BB44     0x8160BB44
8160BC43     0x8160BC43
8160BD42     0x8160BD42
8160BE41     0x8160BE41
8160BF40     0x8160BF40
8160C03F     0x8160C03F
8160C13E     0x8160C13E
8160C23D     0x8160C23D
8160C33C     0x8160C33C
8160C43B     0x8160C43B
8160C53A     0x8160C53A
8160C639     0x8160C639
8160C738     0x8160C738
8160C837     0x8160C837
8160C936     0x8160C936
8160CA35     0x8160CA35
8160CB34     0x8160CB34
8160CC33     0x8160CC33
8160CD32     0x8160CD32
8160CE31     0x8160CE31
8160CF30     0x8160CF30
8160D02F     0x8160D02F
8160D12E     0x8160D12E
8160D22D     0x8160D22D
8160D32C     0x8160D32C
8160D42B     0x8160D42B
8160D52A     0x8160D52A
8160D629     0x8160D629
8160D728     0x8160D728
8160D827     0x8160D827
8160D926     0x8160D926
8160DA25     0x8160DA25
8160DB24     0x8160DB24
8160DC23     0x8160DC23
8160DD22     0x8160DD22
8160DE21     0x8160DE21
8160DF20     0x8160DF20
8160E01F     0x8160E01F
8160E11E     0x8160E11E
8160E21D     0x8160E21D
8160E31C     0x8160E31C
8160E41B     0x8160E41B
8160E51A     0x8160E51A
8160E619     0x8160E619
8160E718     0x8160E718
8160E817     0x8160E817
8160E916     0x8160E916
8160EA15     0x8160EA15
8160EB14     0x8160EB14
8160EC13     0x8160EC13
8160ED12     0x8160ED12
8160EE11     0x8160EE11
8160EF10     0x8160EF10
8160F00F     0x8160F00F
8160F10E     0x8160F10E
8160F20D     0x8160F20D
8160F30C     0x8160F30C
8160F40B     0x8160F40B
8160F50A     0x8160F50A
8160F609     0x8160F609
8160F708     0x8160F708
8160F807     0x8160F807
8160F906     0x8160F906
8160FA05     0x8160FA05
8160FB04     0x8160FB04
8160FC03     0x8160FC03
8160FD02     0x8160FD02
8160FE01     0x8160FE01
8160FF00     0x8160FF00