Hello Joel and all other M100/102/T200 enthusiasts,.

Here what I figure out how the thing seems to work.
1. RESRAM reserves a block of 6 pages byte each and sets LOMEM address to 0xA600
2. INSTAL copies a KB/PRN handler to 0xA010..0xA2DA ( until line 550 DATA 
..,201)
   and the KB map from 0xA2DB to 0xA358, 2 bytes per key
   scheme OLD key - NEW key
3. PRN specific code is loaded to 0xA3B0, pending on selection

I hope the above brings a little light in the "dark"

Regards
Georg from Germany

========== Ihre Nachricht ==========================================

von      : Joel BARBE <quara...@gmail.com>
gesendet : Samstag, 27. Oktober 2018, 23:13
an       : georg.kae...@gk-engineering-services.de
Betreff  : [M100] Tandy 200 azerty rom

__________ Originalnachricht _______________________________________


Hello Georg,
Thanks you again for the details provided 
 
I’m trying to find on the files you have send the part of the data related to 
the keyboard map.
 
I suppose the keyboard map is on install.ba file.
 
I’m struggling to find the part of the mapping. The character code table from 
service manual didn’t help on it. I have tried to change some data on VistualT, 
But I’m unable to find any logic on it right now.
 
Do you have any idea wich DATA lines are related to the keyboard ? If I can 
find a couple of key mapped on it I should be able to decipher it.
 
5 AD=40976
7 CLS:PRINT:PRINT:PRINT:PRINT:PRINT"   DRIVER INSTALLATION, PLEASE WAIT."
8 PRINT :PRINT "      Version 01.00.00"
10 READ A
20 IF A=9999 THEN GOTO 80
30 POKE AD,A
40 AD=AD+1
50 GOTO 10
80 CLS:PRINT"   *********************************":PRINT"   * LOADING OF THE 
PRINTER DRIVER *":PRINT"   *********************************"
90 PRINT:PRINT:PRINT"      WHICH PRINTER DO YOU HAVE :"
100 PRINT:PRINT:PRINT"     1 = DAISY WHEEL II":PRINT"     2 = DAISY WHEEL IIB, 
410, 510":PRINT"     3 = DOT MATRIX PRINTER": PRINT"     4 = NO PRINTER"
120 PRINT:PRINT:INPUT"YOUR CHOICE AND THEN <ENTER> :";A
130 IF A=1 THEN 140
133 IF A=2 THEN 150
136 IF A=3 THEN 160
137 IF A=4 THEN 160
138 GOTO 80
140 CLOAD"DWPOLD",R
150 CLOAD"DWPNEW",R
160 CALL 40976
170 NEW
200  DATA 243, 33, 194, 238, 126, 254, 201, 194, 37, 160, 62, 195, 50, 194, 
238, 33, 162, 161, 195, 49
210  DATA 160, 35, 17, 194, 238, 123, 190, 202, 52, 160, 33, 106, 161, 34, 195, 
238, 175, 50, 213, 161
220  DATA 62, 49, 6, 208, 205, 96, 160, 6, 212, 62, 50, 205, 96, 160, 58, 213, 
160, 254, 50, 194
230  DATA 86, 160, 62, 85, 50, 212, 160, 195, 33, 161, 6, 216, 62, 51, 205, 96, 
160, 195, 33, 161
240  DATA 50, 210, 160, 120, 50, 211, 160, 33, 0, 160, 205, 177, 155, 122, 254, 
6, 220, 116, 160, 201
250  DATA 33, 255, 165, 58, 211, 160, 71, 22, 170, 197, 205, 176, 155, 193, 22, 
0, 33, 255, 165, 205
260  DATA 177, 155, 122, 254, 170, 202, 165, 160, 33, 0, 161, 205, 197, 160, 
58, 210, 160, 50, 213, 160
270  DATA 205, 60, 80, 33, 18, 161, 195, 197, 160, 33, 214, 160, 62, 85, 50, 
212, 160, 126, 35, 254
280  DATA 36, 202, 188, 160, 229, 205, 60, 80, 225, 195, 173, 160, 58, 210, 
160, 205, 60, 80, 33, 230
290  DATA 160, 126, 35, 254, 36, 200, 229, 205, 60, 80, 225, 195, 197, 160, 0, 
0, 0, 0, 69, 82
300  DATA 82, 79, 82, 32, 58, 32, 66, 65, 78, 75, 32, 35, 32, 36, 32, 78, 79, 
84, 32, 67
310  DATA 79, 82, 82, 69, 67, 84, 76, 89, 32, 82, 69, 83, 69, 82, 86, 69, 68, 
13, 10, 36
320  DATA 87, 65, 82, 78, 73, 78, 71, 32, 58, 32, 66, 65, 78, 75, 32, 35, 32, 
36, 32, 78
330  DATA 79, 84, 32, 80, 82, 69, 83, 69, 78, 84, 13, 10, 36, 58, 212, 160, 
192, 58, 213, 160
340  DATA 254, 50, 200, 33, 0, 160, 6, 212, 205, 66, 161, 58, 213, 160, 254, 
51, 200, 33, 0, 160
350  DATA 6, 216, 205, 66, 161, 201, 86, 229, 197, 205, 176, 155, 193, 225, 35, 
124, 254, 165, 194, 66
360  DATA 161, 125, 254, 254, 194, 66, 161, 33, 194, 238, 86, 229, 197, 205, 
176, 155, 193, 225, 35, 125
370  DATA 254, 197, 194, 90, 161, 201, 245, 34, 207, 161, 225, 34, 209, 161, 
235, 34, 211, 161, 33, 0
380  DATA 0, 57, 17, 128, 255, 223, 218, 150, 161, 17, 192, 255, 223, 210, 150, 
161, 225, 42, 211, 161
390  DATA 235, 42, 209, 161, 229, 42, 207, 161, 241, 201, 42, 211, 161, 235, 
42, 209, 161, 229, 42, 207
400  DATA 161, 241, 51, 51, 229, 213, 197, 245, 33, 219, 161, 229, 229, 229, 
229, 229, 58, 213, 161, 183
410  DATA 250, 194, 161, 58, 30, 253, 246, 128, 50, 213, 161, 195, 189, 28, 
225, 225, 225, 225, 225, 230
420  DATA 127, 50, 213, 161, 195, 189, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
243
430  DATA 62, 13, 48, 251, 58, 213, 161, 230, 127, 50, 213, 161, 71, 58, 30, 
253, 79, 144, 202, 181
440  DATA 138, 33, 29, 253, 50, 214, 161, 121, 7, 95, 22, 0, 25, 126, 229, 197, 
205, 97, 162, 193
450  DATA 225, 119, 58, 214, 161, 61, 202, 181, 138, 13, 195, 241, 161, 62, 0, 
50, 215, 161, 34, 216
460  DATA 161, 33, 31, 163, 241, 245, 190, 35, 202, 49, 162, 126, 35, 254, 0, 
194, 28, 162, 42, 216
470  DATA 161, 241, 195, 129, 162, 126, 42, 216, 161, 71, 241, 120, 201, 62, 0, 
50, 215, 161, 34, 216
480  DATA 161, 33, 45, 163, 195, 28, 162, 62, 241, 50, 215, 161, 62, 0, 50, 
218, 161, 241, 58, 218
490  DATA 161, 202, 82, 162, 201, 62, 31, 50, 215, 161, 195, 76, 162, 245, 62, 
240, 50, 218, 161, 241
500  DATA 245, 254, 197, 202, 71, 162, 254, 190, 202, 89, 162, 58, 215, 161, 
254, 241, 202, 17, 162, 254
510  DATA 31, 202, 57, 162, 241, 245, 58, 22, 253, 7, 7, 7, 7, 210, 158, 162, 
241, 245, 33, 59
520  DATA 163, 190, 35, 202, 216, 162, 35, 71, 126, 183, 120, 194, 145, 162, 
58, 22, 253, 7, 7, 7
530  DATA 210, 196, 162, 241, 245, 254, 59, 194, 178, 162, 241, 62, 178, 201, 
254, 91, 194, 187, 162, 241
540  DATA 62, 179, 201, 254, 39, 194, 196, 162, 241, 62, 177, 201, 33, 219, 
162, 241, 245, 190, 35, 202
550  DATA 216, 162, 35, 71, 126, 183, 120, 194, 201, 162, 241, 201, 241, 126, 
201, 90, 89, 89, 90, 122
560  DATA 121, 121, 122, 45, 185, 61, 43, 64, 34, 35, 39, 94, 38, 38, 47, 42, 
40, 40, 41, 41
570  DATA 61, 95, 63, 43, 42, 59, 183, 58, 178, 39, 182, 34, 177, 60, 59, 62, 
58, 47, 45, 63
580  DATA 95, 182, 64, 184, 91, 213, 60, 177, 35, 179, 93, 212, 62, 91, 184, 
93, 179, 0, 25, 25
590  DATA 0, 0, 0, 97, 192, 101, 193, 105, 194, 111, 195, 117, 196, 32, 94, 0, 
0, 97, 182, 101
600  DATA 198, 105, 199, 111, 183, 117, 184, 32, 190, 0, 0, 48, 48, 49, 49, 50, 
50, 51, 51, 52
610  DATA 52, 53, 53, 54, 54, 55, 55, 56, 56, 57, 57, 43, 43, 42, 42, 45, 45, 
47, 47, 46
620  DATA 46, 0, 0, 9999
 
 
 
De : M100 [mailto:m100-boun...@lists.bitchin100.com] De la part de Georg Käter
Envoyé : Friday, October 26, 2018 4:19 PM
À : Joel Barbe
Objet : Re: [M100] Tandy 200 azerty rom
 
Hello Joel and all M100/102/T200 enthusiasts,

you can find in the KB mapping in the T200 8k ROM from address
0x1763 onwards. the KB table is organized in 6 blocks of 44 bytes,
264 bytes in total.

1. key
2. SHIFT key
3. GRAPH key
4. GRAPH-SHIFT key
5. CODE key
6. CODE-SHIFT key

I modified a T200 ROM in that way to a GERMAN KB layout and
it works perfect. Before programing an EEPROM I´ve used VirtualT
for testing.

Anyway the "cleanest" way would be a KB patch loaded to RAM.The
files attached was provided w/my T200 sold in Germany in 1986 to
do this task.

Regards
Georg from Germany

========== Ihre Nachricht ==========================================

von      : Josh Malone <josh.mal...@gmail.com>
gesendet : Montag, 22. Oktober 2018, 17:56
an       : m...@bitchin100.com
Betreff  : [M100] Tandy 200 azerty rom

__________ Originalnachricht _______________________________________

> On Mon, Oct 22, 2018 at 6:54 AM Joel Barbé <quara...@gmail.com> wrote:

>> My question is: do someone have an azerty rom dump file? So i'll try To burn 
>> it.

> I don't have an actual azerty ROM, and I assume that there is a
> genuine one available. However, I just thought I'd note that Bunnie
> Huang has a great article about having the 102 to support Dvorak:

> https://www.bunniestudios.com/blog/?page_id=27

> and presumably his principle would also apply to an azerty mod as well.

> -Josh


__________ Ende Originalnachricht __________________________________

Vertraulichkeitsinformation:
Diese Nachricht ist vertraulich. Die Informationen dieser Nachricht sind 
ausschließlich für die persönliche
und vertrauliche Verwendung durch den/die oben genannten Empfänger bestimmt. 
Wenn Sie kein beabsichtigter
Empfänger sind, bitte lesen, kopieren und verwenden Sie die Nachricht nicht. 
Machen Sie sie nicht anderen
zugänglich. Bitte informieren Sie uns umgehend über den Zustellfehler und 
senden Sie die Originalnachricht
per E-Mail an uns zurück.

Confidentiality Notice:
This message is confidential. The information contained in this message is 
intended only for the personal
and confidential use of the recipient(s) named above. If you are not the 
intended recipient, please do not
read, copy, or use it and do not disclose it to others. Please inform us 
immediately of the delivery error
and return the original message to us via e-mail.


__________ Ende Originalnachricht __________________________________

Vertraulichkeitsinformation:
Diese Nachricht ist vertraulich. Die Informationen dieser Nachricht sind 
ausschließlich für die persönliche
und vertrauliche Verwendung durch den/die oben genannten Empfänger bestimmt. 
Wenn Sie kein beabsichtigter
Empfänger sind, bitte lesen, kopieren und verwenden Sie die Nachricht nicht. 
Machen Sie sie nicht anderen
zugänglich. Bitte informieren Sie uns umgehend über den Zustellfehler und 
senden Sie die Originalnachricht
per E-Mail an uns zurück.

Confidentiality Notice:
This message is confidential. The information contained in this message is 
intended only for the personal
and confidential use of the recipient(s) named above. If you are not the 
intended recipient, please do not
read, copy, or use it and do not disclose it to others. Please inform us 
immediately of the delivery error
and return the original message to us via e-mail.

Reply via email to