Date : Sun, 18 May 2014 10:11:48 -0500
From : matt@... (Matt Godbolt)
Subject: JSBeeb
Sounds like I should put both in (and on further experimentation there
are other keys to update too!). Will try and get it released later
today with the fix - thanks guys :)
On Sun, May 18, 2014@... AM, Mark Ashley <mark@...> wrote:
> Hmm, trying the js console command it gives 'ad' now too. FF19 gave the 'bd'
> earlier, FF29 gives 'ad' now. The JS console is changed in the new FF, I
> wonder if that is relevant.
>
> Win XP SP3. FF29.
>
>
> On Mon, May 19, 2014@... AM, Matt Godbolt <matt@...> wrote:
>>
>> I get "ad" in Firefox 28 (on Linux) - are you certain you see bd? I
>> can easily add an additional mapping for ad too if it's just that!
>>
>> -matt
>>
>> On Sun, May 18, 2014@... AM, Matt Godbolt <matt@...> wrote:
>> > I can confirm I get the same problem in FF! Investigating...thanks!
>> >
>> > On Sun, May 18, 2014@... AM, Mark Ashley <mark@...> wrote:
>> >> FWIW I get the 'bd' keycode too, but the key output doesn't appear
>> >> inside
>> >> jsbeeb in my Firefox 19 or Firefox 29 browsers.
>> >>
>> >>
>> >>
>> >> On Mon, May 19, 2014@... AM, Matt Godbolt <matt@...>
>> >> wrote:
>> >>>
>> >>> Hey all,
>> >>>
>> >>> Coming in late to this discuss via the flyby CC, so apologies if I'm
>> >>> not quite answering the questions posed!
>> >>>
>> >>> Firstly, the keyboard handling in Javascript is a total mess! There's
>> >>> no way to detect the keyboard layout of the computer and the codes
>> >>> received are not quite physical keys but are something in-between.
>> >>> For most keys it's a straight ASCII value, but then some keys have
>> >>> random weird numbers (like the key 0xbd). As I'm on a US laptop
>> >>> keyboard, the keys are tailored for that. I'm working on some
>> >>> primitive locale-detection and then some different maps for UK and US
>> >>> keyboards.
>> >>>
>> >>> To the original point anyway, the BBC -/= key ought to be the _/-
>> >>> laptop key (directly next to the zero key). If that's not working for
>> >>> you, it seems like I need even more complex mappings :) (it seems my
>> >>> comment's wrong too, will fix that).
>> >>>
>> >>> As Mark says, it's pretty easy to debug these things. If you want to
>> >>> run a local development version of jsbeeb, download and unpack it,
>> >>> then run a local webserver. I use Python's built-in webserver, simply
>> >>> typing "python -mSimpleHTTPServer" from the jsbeeb directory and then
>> >>> visiting localhost:8000.
>> >>>
>> >>> Alternatively if you just want the keycodes, bring up a new web
>> >>> browser, hit ctrl-shift J to get the javascript console up and type:
>> >>>
>> >>> window.onkeydown = function(e){
>> >>> console.log(e.keyCode.toString(16)); };
>> >>>
>> >>> Then click back into the main window and start pressing keys. That'll
>> >>> give you what I see. For reference I see "bd" for the underscore key
>> >>> on my US keyboard.
>> >>>
>> >>> At the moment I'm working on adding Dropbox and Google Drive support
>> >>> so you can save your disc images in the cloud, but I also have a
>> >>> half-written "help" page about the keyboard mappings. Sounds like I
>> >>> need to rethink that if other keyboards have different values (some
>> >>> kind of reconfigurable setup?)
>> >>>
>> >>> Cheers, Matt :)
>> >>>
>> >>> - matt
>> >>>
>> >>> On Sun, May 18, 2014@... AM, Mark Ashley <mark@...> wrote:
>> >>> > Since the key mapping appears to be physical, it should be the same
>> >>> > on
>> >>> > all
>> >>> > laptop/usb keyboards. All the Beeb emulators would be using the same
>> >>> > keycodes.
>> >>> >
>> >>> > The image here:
>> >>> >
>> >>> >
>> >>> > http://wallmobi.net/uploads/pictures/technology/36678-bbc-micro-model-b.jpg
>> >>> > has the '-' and the '=' key being the same key. Just next to the
>> >>> > 'zero'.
>> >>> >
>> >>> > The mapping from the BeebEm program in userkybd.cpp (full table is
>> >>> > at
>> >>> > the
>> >>> > bottom) has that -/= key being '1,7', in jsbeeb the notation is the
>> >>> > reverse
>> >>> > of that so we're looking for 7,1 in the
>> >>> > https://github.com/mattgodbolt/jsbeeb/blob/master/via.js file:
>> >>> >
>> >>> > Line 391: map('\xbd', 7, 1); // '_' / '=' mapped to
>> >>> > underscore
>> >>> >
>> >>> > so that underscore mapping appears to be wrong? It should be minus
>> >>> > and
>> >>> > equals. It's a moot point anyway as it's (apparently) not triggering
>> >>> > an
>> >>> > event and inserting a key, nothing happens on screen when you press
>> >>> > it!
>> >>> >
>> >>> > To debug it you'd need to download the git code and run it on a port
>> >>> > per
>> >>> > the
>> >>> > instructions. Then do mapping debug prints to show what
>> >>> > row/col/assumed
>> >>> > key
>> >>> > was pressed. I'm tired and drunk right now so better to CC Matt
>> >>> > himself
>> >>> > on
>> >>> > this and ask what's happening :) All yours, Matt.
>> >>> >
>> >>> > Whilst on the topic, the mapping for the \ and | key is always
>> >>> > giving a
>> >>> > @,
>> >>> > for unshifted and shifted.
>> >>> >
>> >>> > ta,
>> >>> > Mark.
>> >>> >
>> >>> >
>> >>> >
>> >>> > Beebem keymapping table:
>> >>> >
>> >>> > Download at: http://beebem-unix.bbcmicro.com/download.html
>> >>> > File beebem-0.0.13.tar.gz --> userkybd.cpp
>> >>> >
>> >>> > // Row,Col Default values set to transTable1
>> >>> > //--int UserKeymap[256][2]={
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 0
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 4
>> >>> > //-- 5,9, 6,0, 0,0, 0,0, // 8 [BS][TAB]..
>> >>> > //-- 0,0, 4,9, 0,0, 0,0, // 12 .RET..
>> >>> > //-- 0,0, 0,1, 0,0, -2,-2, // 16 .CTRL.BREAK
>> >>> > //-- 4,0, 0,0, 0,0, 0,0, // 20 CAPS...
>> >>> > //-- 0,0, 0,0, 0,0, 7,0, // 24 ...ESC
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 28
>> >>> > //-- 6,2, 0,0, 0,0, 6,9, // 32 SPACE..[End]
>> >>> > //-- 0,0, 1,9, 3,9, 7,9, // 36 .[Left][Up][Right]
>> >>> > //-- 2,9, 0,0, 0,0, -3,-3, // 40 [Down]...
>> >>> > //-- 0,0, 0,0, 5,9, 0,0, // 44 ..[DEL].
>> >>> > //-- 2,7, 3,0, 3,1, 1,1, // 48 0123
>> >>> > //-- 1,2, 1,3, 3,4, 2,4, // 52 4567
>> >>> > //-- 1,5, 2,6, 0,0, 0,0, // 56 89
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 60
>> >>> > //-- 0,0, 4,1, 6,4, 5,2, // 64.. ABC
>> >>> > //-- 3,2, 2,2, 4,3, 5,3, // 68 DEFG
>> >>> > //-- 5,4, 2,5, 4,5, 4,6, // 72 HIJK
>> >>> > //-- 5,6, 6,5, 5,5, 3,6, // 76 LMNO
>> >>> > //-- 3,7, 1,0, 3,3, 5,1, // 80 PQRS
>> >>> > //-- 2,3, 3,5, 6,3, 2,1, // 84 TUVW
>> >>> > //-- 4,2, 4,4, 6,1, 0,0, // 88 XYZ
>> >>> > //-- 0,0, 6,2, 0,0, 0,0, // 92 . SPACE ..
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 96
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 100
>> >>> > //-- 0,0, 0,0, 0,0, -4,0, // 104 Keypad+
>> >>> > //-- 0,0, -4,1, 0,0, 0,0, // 108 Keypad-
>> >>> > //-- 7,1, 7,2, 7,3, 1,4, // 112 F1 F2 F3 F4
>> >>> > //-- 7,4, 7,5, 1,6, 7,6, // 116 F5 F6 F7 F8
>> >>> > //-- 7,7, 2,0, 2,0, -2,-2, // 120 F9 F10 F11 F12
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 124
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 128
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 132
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 136
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 140
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 144
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 148
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 152
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 156
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 160
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 164
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 168
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 172
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 176
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 180
>> >>> > //-- 0,0, 0,0, 5,7, 1,8, // 184 ..;
>> >>> > //-- 6,6, 1,7, 6,7, 6,8, // 188 ,-./
>> >>> > //-- 4,8, 0,0, 0,0, 0,0, // 192 @ ...
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 196
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 200
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 204
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 208
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 212
>> >>> > //-- 0,0, 0,0, 0,0, 3,8, // 216 ...[
>> >>> > //-- 7,8, 5,8, 2,8, 4,7, // 220 \]#`
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 224
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 228
>> >>> > //-- 0,0, 0,0, 0,0, 0,0, // 232
>> >>> > //-- 0,0, 0,0, 0,0, 0,0,
>> >>> > //-- 0,0, 0,0, 0,0, 0,0,
>> >>> > //-- 0,0, 0,0, 0,0, 0,0,
>> >>> > //-- 0,0, 0,0, 0,0, 0,0,
>> >>> > //-- 0,0, 0,0, 0,0, 0,0
>> >>> > //--};
>> >>> >
>> >>> >
>> >>> > On Sun, May 18, 2014@... PM, Alan Williams <ajw@...>
>> >>> > wrote:
>> >>> >>
>> >>> >> Has anybody found the minus key on a US ascii keyboard?
>> >>> >> Alan
>> >>> >>
>> >>> >>
>> >>> >> -----Original Message-----
>> >>> >> From: bbc-micro-bounces+ajw=bigblue.net.au@...
>> >>> >> [mailto:bbc-micro-bounces+ajw=bigblue.net.au@...] On
>> >>> >> Behalf
>> >>> >> Of John Kortink
>> >>> >> Sent: Friday, 16 May 2014 6:34 AM
>> >>> >> To: bbc-micro@...
>> >>> >> Subject: Re: [BBC-Micro] JSBeeb
>> >>> >>
>> >>> >>
>> >>> >> On Thu, 15 May 2014 20:36:01 +0100, Jason Flynn G7OCD
>> >>> >> <flynnjs@...>
>> >>> >> wrote:
>> >>> >>
>> >>> >> >On 15/05/2014 14:31, John Kortink wrote:
>> >>> >> >> I stumbled on this a while back. It's quite amazing how you can
>> >>> >> >> do
>> >>> >> >> this nowadays in a mere script language, and still get the
>> >>> >> >> required
>> >>> >> >> speed.
>> >>> >> >
>> >>> >> >What amazes me more is:
>> >>> >> >http://s-macke.github.io/jor1k/
>> >>> >>
>> >>> >> Yikes.
>> >>> >>
>> >>> >> As a machine, it's a little short on memory and clock speed though.
>> >>> >> ;-)
>> >>> >>
>> >>> >> John Kortink
>> >
>> > --
>> > Matt
>> --
>> Matt
--
Matt