@@ -28,30 +28,40 @@ namespace casioemu {
28
28
region_input_filter.Setup (0xF042 , 1 , " Keyboard/InputFilter" , &input_filter, MMURegion::DefaultRead<uint8_t >, MMURegion::DefaultWrite<uint8_t >, emulator);
29
29
30
30
region_ko_mask.Setup (
31
- 0xF044 , 2 , " Keyboard/KOMask" , this , [](MMURegion *region, size_t offset) {
32
- offset -= region->base ;
33
- Keyboard *keyboard = ((Keyboard *)region->userdata );
34
- return (uint8_t )((keyboard->keyboard_out_mask & 0x03FF ) >> (offset * 8 )); }, [](MMURegion *region, size_t offset, uint8_t data) {
35
- offset -= region->base ;
36
- Keyboard *keyboard = ((Keyboard *)region->userdata );
37
- keyboard->keyboard_out_mask &= ~(((uint16_t )0xFF ) << (offset * 8 ));
38
- keyboard->keyboard_out_mask |= ((uint16_t )data) << (offset * 8 );
39
- keyboard->keyboard_out_mask &= 0x03FF ;
40
- if (!offset)
41
- keyboard->RecalculateKI (); }, emulator);
31
+ 0xF044 , 2 , " Keyboard/KOMask" , this ,
32
+ [](MMURegion *region, size_t offset) {
33
+ offset -= region->base ;
34
+ Keyboard *keyboard = ((Keyboard *)region->userdata );
35
+ return (uint8_t )((keyboard->keyboard_out_mask & 0x03FF ) >> (offset * 8 ));
36
+ },
37
+ [](MMURegion *region, size_t offset, uint8_t data) {
38
+ offset -= region->base ;
39
+ Keyboard *keyboard = ((Keyboard *)region->userdata );
40
+ keyboard->keyboard_out_mask &= ~(((uint16_t )0xFF ) << (offset * 8 ));
41
+ keyboard->keyboard_out_mask |= ((uint16_t )data) << (offset * 8 );
42
+ keyboard->keyboard_out_mask &= 0x03FF ;
43
+ if (!offset)
44
+ keyboard->RecalculateKI ();
45
+ },
46
+ emulator);
42
47
43
48
region_ko.Setup (
44
- 0xF046 , 2 , " Keyboard/KO" , this , [](MMURegion *region, size_t offset) {
45
- offset -= region->base ;
46
- Keyboard *keyboard = ((Keyboard *)region->userdata );
47
- return (uint8_t )((keyboard->keyboard_out & 0x03FF ) >> (offset * 8 )); }, [](MMURegion *region, size_t offset, uint8_t data) {
48
- offset -= region->base ;
49
- Keyboard *keyboard = ((Keyboard *)region->userdata );
50
- keyboard->keyboard_out &= ~(((uint16_t )0xFF ) << (offset * 8 ));
51
- keyboard->keyboard_out |= ((uint16_t )data) << (offset * 8 );
52
- keyboard->keyboard_out &= 0x03FF ;
53
- if (!offset)
54
- keyboard->RecalculateKI (); }, emulator);
49
+ 0xF046 , 2 , " Keyboard/KO" , this ,
50
+ [](MMURegion *region, size_t offset) {
51
+ offset -= region->base ;
52
+ Keyboard *keyboard = ((Keyboard *)region->userdata );
53
+ return (uint8_t )((keyboard->keyboard_out & 0x03FF ) >> (offset * 8 ));
54
+ },
55
+ [](MMURegion *region, size_t offset, uint8_t data) {
56
+ offset -= region->base ;
57
+ Keyboard *keyboard = ((Keyboard *)region->userdata );
58
+ keyboard->keyboard_out &= ~(((uint16_t )0xFF ) << (offset * 8 ));
59
+ keyboard->keyboard_out |= ((uint16_t )data) << (offset * 8 );
60
+ keyboard->keyboard_out &= 0x03FF ;
61
+ if (!offset)
62
+ keyboard->RecalculateKI ();
63
+ },
64
+ emulator);
55
65
56
66
if (!real_hardware) {
57
67
keyboard_pd_emu = emulator.GetModelInfo (" pd_value" );
0 commit comments