CTRL probably too. CTRL+C shows ^C
Looks good! CTRL-H is Backspace and CTRL-M is RETURN ...
CTRL probably too. CTRL+C shows ^C
Looks good! CTRL-H is Backspace and CTRL-M is RETURN ...
arekbr Please change the bytes at position 388D to:
... CTRL and SHIFT works now in Jantar-MAME ...
Found this in ROM0.MAC (FOG 184):
; KEYBOARD TABLE COPIED INTO ROM'S RAM AT INIT TIME:
R_K_IN_TB:
;
; MASKS FOR REMOVING INVALID KEYS FROM SCAN:
; (INVALID KEYS ARE SHIFT, CTRL, ALPHA LOCK AND THE DISABLED RETURN
; KEY.)
;
DB 11100011B ;MASK FOR ROW 0: STRIP OFF CTRL, ALPHA AND SHIFT
DB 11111111B ;FOR ROWS 1-6, STRIP OFF NOTHING
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 00000000B ;FOR ROW 7, STRIP OFF ALL CHARS
;
; FOLLOWING ARE THE KEYBOARD MATRIX LOCATIONS FOR CTRL, ALPHA AND SHIFT:
;
DB 000010B ;CTRL: ROW 0, COL 2
DB 111011B ;ALPHA: ROW 7, COL 3
DB 000100B ;SHIFT: ROW 0, COL 4
Alles anzeigen
and the hex sequence (E3 FF FF FF FF FF FF 00 02 3B 04) at position 388D in the IMD ... we are getting closer ...
So, is it possible to recompile from the sources this part for Jantar (as its builders probably did) and "recreate" the CP/M system in the PL/Jantar version?
Yes, access to the source files on the IMDs above is the first step: there is most likely a "keyboard table" that the Osborne CP/M uses and where ALPHA LOCK, CTRL and SHIFT are also queried ...
For the IMDs on http://bitsavers.org/bits/User…e/Executive_Double-Sided/ this DPB should work:
SPT BSH BLM EXM DSM DRM AL0-AL1 CKS OFF PSH PHM
DPB(HEX): 0050h 04h 0Fh 01h 00C2h 003Fh 80h 00h 0010h 0001h 03h 07h
DPB(DEC): 80 4 15 1 194 63 128 0 16 1 3 7
BLOCK EXTENT MAX DISK DIRECTORY CHECK SUM SECTOR
SIZE (K) FOLDS SIZE (K) ENTRIES ENTRIES SIZE
DPB(DEC): 2K 1 390 64 64 1024
... the "Skew" seems to be 2: assembler source files look plausible ...
Also under pure CP/M when a key marked as CAPSLOCK is pressed, the letter Ł works as TAB
CAPSLOCK is TAB and Ł is ALPHA LOCK (can't be remapped) on the Osborne ... there some keys left to define:
we ran the wordstar editor and managed to check it out
Can't reproduce the missing characters (", %, =, :) with Jantar-MAME and Osborne Executive Word Star ...
Since CP/M ran on many computers, each manufacturer made their own changes to it. Some programs therefore have to be patched to use special keys (function keys and cursor keys) at all ... WordStar doesn't know these special keys: the cursor is moved using CTRL key combinations ... some patches mapped the cursor keys to ^E, ^S, ^D and ^X ...
Please change: 38D5 = 2B for + and 3915 = 2A for *
... we could map 0x38CC (special UP-ARROWS key on the Jantar) to 8A (Cursor Up) ...
SPACE was probably shooting
... it's K in this version ... how about releasing the Z80 assembler source with a "proper" (= Free- and Open-Source) license?
The controls are A (Rotate) and S (Thrust) ... am I missing something?
The game runs fine in SDLTRS:
... but seems that the keys 2 and 3 in the main menu are not working here ...
New IMD should fix CTRL A - Z codes ... tested with current patch for MAME ...
arekbr please check the + key again (also with UP for SHIFT): it should display 1 or 2 for testing ...
... for the Jantar this should probably be:
As for the CTRL and SHIFT codes - so tell me, do you see any chance of finding and changing the codes for Jantar in CPM from Osborne without re-writing the keyboard driver? Then dad wouldn't have to change anything in the keyboard.
In the Jantar MAME driver, pressing CTRL-A outputs 01 (which is correct), CTRL-B shows 18 hex: but 02 is the correct ASCII code ... the ASCII codes for each CTRL key can also be changed like above: it remains only to find out the corresponding addresses in the IMD ... The "problem" is still that the CTRL key itself (like SHIFT) cannot be remapped ...
Please post the Meritum I game in the Tandy TRS-80 section ...
the Z80 is the uncharted, dark terrain of Mordor
Of course not ... show me LDIR on the 6502 ... On the 6502: A brilliant or sloppy design?
Now my dad is trying an electrical change to make the SHIFT key work as well and the CTRL key too as it is written on the Jantar keyboard [ ... ]
OK, "the hard way" ... The Ctrl-Codes are still messed up on the Jantar ...
You're welcome ... glad I could be of assistance ... Does the "Meritum I" (in your museum) work?
byte ???? = HT probably TAB
byte ???? = LEFT ARROW
HT ("Horizontal Tabulator"?) is already defined at address 389F with ASCII code 09 ... LEFT ARROW and BACKSPACE both have ASCII code 08 on the Osborne Executive ... it's the DEL key on the Jantar for now ...
Found some assembler sources of the Osborne Executive CP/M in http://bitsavers.org/bits/User…e/Executive_Double-Sided/ ...
Byte 3898 = 03: maps ETX (End Of Text) to ^C
Byte 38CA = 18: maps CAN (Cancel) to ^X
... these are their ASCII values, but the keys can of course be reassigned ...
SHIFT = as a real SHIFT key shows ^L
OK, this works as expected ... now please change the byte value to 8A (Cursor Up) ...
So it seems that the creators/developers of the Jantar computer wrote their keyboard driver for CP/M? Did I understand that correctly?
Yes.
and real SHIFT key on Jantar keyboard with UP ARROW shows ^L too
after the last change at position 3908? Then please change also the byte at 38C8 to 8B ...
How are these keys read? Does it mean that the Jantar must have had a special version of CP/M?
The Osborne-CP/M keyboard driver will expect CTRL and SHIFT at specific addresses in the keyboard matrix, so an adjustment would have to be made there too ... unfortunately, we can only reassign keys that generate an ASCII code ...
Then programs like WordStar will not be usable ... please change the byte at position 3908 to the value 8B: does pressing SHIFT shows ^L?
Please change byte at hex positions 38C6 to 5F and 3906 to 08 in the IMD: DEL should output the underscore (_) and shifted DEL act like Backspace ... or 38C6 to 08 to avoid pressing the "Up"-Arrow ...
... and positions 38C0, 3900, 3940 and 3980 to 8A and test SHIFT again ...
... please also try 38C8 ...
HT - is probably TAB - it makes a few space
ESC shows ^[
ARROW RIGHT key shows ^L
and RETURN key is on DOWN ARROW
... looks good! It should now be possible to type in and run the following BASIC-program:
... and press the arrow keys, ETX , CAN and / ...
At least the characters are on the right keys ... Please let your dad test this new image: cursor keys should work, shifted symbols on 1-9 should match with Jantar keyboard, - / + and / should also work ... there is BASIC.COM for further testing: enter SYSTEM to return to CP/M ...
Chuck Guzis ist mit der Bezeichnung "Skew" in 22DISK auch nicht so ganz glücklich:
22Disk's use of "SKEW" was a late cop-out for formatting only. I probably should have used the word INTERLEAVE, but that had already been used in the documentation. I ran out of synonyms. In any case, unless you're formatting floppies, the keyword doesn't matter--and in fact, is omitted for most of them. Mea maxima culpa.
Very strangely this matrix is made.
Maybe there were "technical reasons" for doing it that way back then ... please check out the attached IMD: this should add ,, ., ;, -, <, >, :, = and ESC ... and hopefully fix the SHIFT key ...
Shift from the Jantar keyboard doesn't work, there is still the letter L with that ^ stamp. Only the shift which is now in a different place works. On the Jantar keyboard SHIFT is is at the up arrow.
same behavior as in MAME ... this whole keyboard conversion is really confusing ...
Please test the attached IMD: all letters (a-z and A-Z) should work now ...