News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

WinAPE Emulator & Windows UK full-sized keyboards

Started by PortoManc, 22:33, 07 September 23

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

PortoManc

All,
I've seen a number of 'My keyboard doesn't match the Amstrad one' posts in this board from 240 or days ago but none of them seem to answer my query exactly anyway.
I have a full-sized, UK British keyboard (actually, an Advent K112 keyboard) attached to my Windows 11 machine and I am attempting to run WinAPE in order to : 1. refresh my early days in the '80s when I used an Amstrad CPC6128 to write my 40,000 word Masters thesis (using NewWord running in CP/M), and 2. to attempt to learn a bit more of the fundamentals of programming anything other than BASIC and subsequent Visual Basic (for applications).
I've printed out the keyboard 'map' from the Amstrad Users manual and have also begun to get that 'muscle memory' to remember where on my keyboard the | character and the other 'punctuation' keys are. I have hit a snag however.
The 'map' shows the right hand keys of the original Amstrad keyboard as : P, @ (shifted as '|'), [ (shifted as '{' ) then on the next line : (shifted as '*'), ; (shifted as '+') , ] (shifted as '}'). The default WinAPE keyboard (default.kbd) seems to show those in my installation, but when I try to press what should be the ']' or '}' keys (on my keyboard these are the hash and tilde # , ~ key), WinAPE just beeps and doesn't enter a character on the screen, and indeed those closing square and curly braces appear on the 'Windows key' which should map to opening curly and square braces. I've tried various combinations of Ctrl & key, Alt & key, Shift & key and AltGr & key to no avail. All the other mappings seem to work fine.
Is this a known problem with standard British keyboards? Can I set up a keyboard definition file myself to get round this? I have looked at default.kbd in Windows Notepad but that just has extended character set 'hieroglyphs' so presumably are control codes. Or is there some sort of program that I can use to edit a copy of that file to make my own definition file? Any suggestions will be helpful, as I know that the '{', the '}' the '[' and the ']' characters are important in working with machine code and other lower level programming.
I DO know that those keys do work in other emulators as I also have a BBC micro emulator set up on my PC for the same reason, and in that case, the characters appear when the key is pressed.
Thanks for any suggestions, hints or pointers.

McArti0

https://www.microsoft.com/en-US/download/details.aspx?id=102134

Microsoft Keyboard Layout Creator (MSKLC) Version 1.4

Maybe this will work in win11 as well?
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

PortoManc

Thanks, McArti0.
I've installed the program to my PC and generated a keyboard with it, but WinAPE is expecting a .kbd file and Microsoft Keyboard generates a .klc file. Even when I've saved it with a .kbd extension, WinAPE won't change its key definitions. I might have to hunt around for another style of keyboard and see if I can get any success with that? Unfortunately, I now live in Portugal, so British English keyboards are hard to come by here...

But if anyone else has any solutions...?

Jean-Marie

You can remap keys with Winape but it's rather cumbersome.
I would suggest using Caprice Forever instead, which will map your PC keyboard perfectly.
You must ensure the option Use hardware mapping is off.
It features an assembler & a debugger, like Winape.






Rabs

Don't know if this helps I use this little assembler program to re-map the keys (not my idea). Works for me, but you have to load/assemble and call each time so a bit awkward.

org #8000


ld hl,map
loop:
ld a,(hl)
or a
ret z
ld c,a
inc hl
ld b,(hl)
push hl
call #bb27
pop hl
inc hl
ld a,c
ld b,(hl)
push hl
call #bb2d
pop hl
inc hl
jp loop


map:
db 57,'3#'
db 48,'6^'
db 41,'7&'
db 40,'8*'
db 33,'9('
db 32,'0)'
db 25,'-_'
db 24,'=+'
db 26,'[{'
db 17,']}'
db 29,';:'
db 28,"'@"
db 19,'#~'
db 22,'\|'
db 0

PortoManc

Merci beaucoup, Jean-Marie.
I've downloaded CaPrCe Forever (and even found the 23.7 version you pointed to). And after simply the first run, I've got my full keyboard back again! (and the keys match my English UK Windows keyboard so the '|' & '\' key is at the bottom left and the troublesome curly and square brace keys are up next to the [Enter] key.) I will now investigate the program and all its options and possibilities, but it certainly seems very user-friendly to me, and I don't think I will need to peek and poke around the memory trying to force my PC keyboard to 'bend' into an Amstrad keymap.

Thanks again.

PortoManc

And thanks also Rabs, for the assembler code. I won't use that just yet and Caprice seems to be doing the job, but I can perhaps store that code on one side for when I start digging around inside the internals of the the processor. It might come in handy as an example of code then.

Regards,

 

McArti0

Ok Solved.
I had to remember how I did it.

FIRST: Change CLR Key from backslash to DELETE.

SECOND: Set Key close square bracket " ] " as a backslash.

ps. I hate Caprice  ;)
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

Powered by SMFPacks Menu Editor Mod