Hallo Forum, ich habe hier ein altes Phytec Minicon535, das sich wie folgt meldet: MC535-MONITOR/BASIC V1.26c (C) PHYTEC Messtechnik 1989 Die leicht zu findende Doku zu MCS-Basic-52 V1.1 (von 2001) ist leider zu jung und auf meinem System gibt es etliche der beschriebenen Befehle und Operatoren gar nicht. Zum Monitor-Programm konnte ich gar nichts brauchbares finden, kennt vielleicht von euch noch jemand Doku zu ähnlich alten Monitor-Programmen aus dieser Zeit die ich vergleichen könnte? Bisher konnte ich (zum Monitor) rausfinden: x - zeigt die Register an p - führt einen Einzelschritt aus t - wie p (?) u [start-adr.],[end-adr.] - disassembliere (ohne Symbole) g [adr.] - starte Maschinenprogramm ex - edit hex eb - edit binary (oder bitwise) dd[],db[],di[] nehmen jeweils nur 8-Bit als Argument und zeigen anscheinend nur Daten aus der Zeropage (?) Wäre toll wenn sich noch jemand an die Kommandos erinnern und mir da auf die Sprünge helfen kann.
dc [start-adr],[end-adr.] bringt einen zur Code-Ansicht mit ASCII-Darstellung in der rechten Spalte Ab Adresse 8f20h sind dann die gesuchten Komandos zu finden. Falls sich noch jemand mit den alten Teilen auskennt freue ich mich nach wie vor über jeden Beitrag.
1 | C:8F20: 20 20 3E 44 42 20 72 61 6E 67 65 20 20 3E 45 42 : >DB range >EB |
2 | C:8F30: 20 61 64 64 72 65 73 73 20 20 3E 46 49 4C 4C 42 : address >FILLB |
3 | C:8F40: 20 72 61 6E 67 65 20 76 61 6C 75 65 20 20 3E 56 : range value >V |
4 | C:8F50: 42 20 72 61 6E 67 65 20 76 61 6C 75 65 0D 0A 63 : B range value..c |
5 | C:8F60: 6F 64 65 3A 20 20 3E 44 43 20 72 61 6E 67 65 20 : ode: >DC range |
6 | C:8F70: 20 3E 45 43 20 61 64 64 72 65 73 73 20 20 3E 46 : >EC address >F |
7 | C:8F80: 49 4C 4C 43 20 72 61 6E 67 65 20 76 61 6C 75 65 : ILLC range value |
8 | C:8F90: 20 20 3E 56 43 20 72 61 6E 67 65 20 76 61 6C 75 : >VC range valu |
9 | C:8FA0: 65 0D 0A 64 61 74 61 3A 20 20 3E 44 44 20 72 61 : e..data: >DD ra |
10 | C:8FB0: 6E 67 65 20 20 3E 45 44 20 61 64 64 72 65 73 73 : nge >ED address |
11 | C:8FC0: 20 20 3E 46 49 4C 4C 44 20 72 61 6E 67 65 20 76 : >FILLD range v |
12 | C:8FD0: 61 6C 75 65 20 20 3E 56 44 20 72 61 6E 67 65 20 : alue >VD range |
13 | C:8FE0: 76 61 6C 75 65 0D 0A 69 64 61 74 61 3A 20 3E 44 : value..idata: >D |
14 | C:8FF0: 49 20 72 61 6E 67 65 20 20 3E 45 49 20 61 64 64 : I range >EI add |
15 | C:9000: 72 65 73 73 20 20 3E 46 49 4C 4C 49 20 72 61 6E : ress >FILLI ran |
16 | C:9010: 67 65 20 76 61 6C 75 65 20 20 3E 56 49 20 72 61 : ge value >VI ra |
17 | C:9020: 6E 67 65 20 76 61 6C 75 65 0D 0A 78 64 61 74 61 : nge value..xdata |
18 | C:9030: 3A 20 3E 44 58 20 72 61 6E 67 65 20 20 3E 45 58 : : >DX range >EX |
19 | C:9040: 20 61 64 64 72 65 73 73 20 20 3E 46 49 4C 4C 58 : address >FILLX |
20 | C:9050: 20 72 61 6E 67 65 20 76 61 6C 75 65 20 20 3E 56 : range value >V |
21 | C:9060: 58 20 72 61 6E 67 65 20 76 61 6C 75 65 0D 0A 0D : X range value... |
22 | C:9070: 0A 20 70 72 6F 67 72 61 6D 20 65 78 65 63 75 74 : . program execut |
23 | C:9080: 69 6F 6E 20 20 20 20 20 20 20 20 20 20 20 20 20 : ion |
24 | C:9090: 20 62 72 65 61 6B 70 6F 69 6E 74 28 73 29 20 20 : breakpoint(s) |
25 | C:90A0: 20 20 20 20 70 72 6F 67 72 61 6D 20 6C 6F 61 64 : program load |
26 | C:90B0: 2F 73 61 76 65 0D 0A 3E 47 20 5B 61 64 64 72 65 : /save..>G [addre |
27 | C:90C0: 73 73 5D 20 5B 2C 62 72 65 61 6B 61 64 64 5D 20 : ss] [,breakadd] |
28 | C:90D0: 2D 20 67 6F 20 20 3E 42 44 20 62 70 20 2D 20 64 : - go >BD bp - d |
29 | C:90E0: 69 73 61 62 6C 65 20 20 20 3E 3A 68 65 78 5F 72 : isable >:hex_r |
30 | C:90F0: 65 63 20 2D 20 6C 6F 61 64 20 69 6E 74 65 6C 20 : ec - load intel |
31 | C:9100: 68 65 78 0D 0A 3E 54 20 5B 63 6F 75 6E 74 5D 20 : hex..>T [count] |
32 | C:9110: 2D 20 74 72 61 63 65 20 73 74 65 70 20 20 20 20 : - trace step |
33 | C:9120: 20 20 20 20 3E 42 45 20 62 70 20 2D 20 65 6E 61 : >BE bp - ena |
34 | C:9130: 62 6C 65 20 20 20 20 3E 53 20 72 61 6E 67 65 20 : ble >S range |
35 | C:9140: 2D 20 73 61 76 65 20 69 6E 74 65 6C 20 68 65 78 : - save intel hex |
36 | C:9150: 0D 0A 3E 50 20 5B 63 6F 75 6E 74 5D 20 2D 20 70 : ..>P [count] - p |
37 | C:9160: 72 6F 63 65 64 75 72 65 20 73 74 65 70 20 20 20 : rocedure step |
38 | C:9170: 20 3E 42 4B 20 62 70 20 2D 20 6B 69 6C 6C 0D 0A : >BK bp - kill.. |
39 | C:9180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : |
40 | C:9190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3E : > |
41 | C:91A0: 42 4C 20 2D 20 6C 69 73 74 0D 0A 20 20 20 20 20 : BL - list.. |
42 | C:91B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : |
43 | C:91C0: 20 20 20 20 20 20 20 20 20 20 3E 42 53 20 61 64 : >BS ad |
44 | C:91D0: 64 72 65 73 73 20 2D 20 73 65 74 0D 0A 20 75 74 : dress - set.. ut |
45 | C:91E0: 69 6C 69 74 79 0D 0A 3E 41 20 61 64 64 72 65 73 : ility..>A addres |
46 | C:91F0: 73 20 2D 20 61 73 73 65 6D 62 6C 65 20 20 20 20 : s - assemble |
47 | C:9200: 20 20 20 20 20 20 3E 4D 58 20 78 72 61 6E 67 65 : >MX xrange |
48 | C:9210: 20 64 65 73 74 20 2D 20 6D 6F 76 65 20 78 64 61 : dest - move xda |
49 | C:9220: 74 61 0D 0A 3E 55 20 72 61 6E 67 65 20 2D 20 64 : ta..>U range - d |
50 | C:9230: 69 73 61 73 73 65 6D 62 6C 65 20 20 20 20 20 20 : isassemble |
51 | C:9240: 20 20 20 3E 4D 43 20 63 72 61 6E 67 65 20 64 65 : >MC crange de |
52 | C:9250: 73 74 20 2D 20 6D 6F 76 65 20 63 64 61 74 61 0D : st - move cdata. |
53 | C:9260: 0A 3E 58 20 5B 72 65 67 69 73 74 65 72 5D 20 2D : .>X [register] - |
54 | C:9270: 20 64 69 73 70 2F 63 68 61 6E 67 65 20 20 20 20 : disp/change |
55 | C:9280: 3E 42 41 53 49 43 20 2D 20 20 62 61 73 69 63 20 : >BASIC - basic |
56 | C:9290: 69 6E 74 65 72 70 72 65 74 65 72 0D 0A 3E 48 45 : interpreter..>HE |
57 | C:92A0: 4C 50 20 2D 20 64 69 73 70 6C 61 79 20 6D 65 6E : LP - display men |
58 | C:92B0: 75 20 20 20 20 20 20 20 20 20 20 20 3E 4D 41 50 : u >MAP |
59 | C:92C0: 20 5B 62 61 73 69 63 72 61 6D 5D 0D 8A 43 00 58 : [basicram]..C.X |
60 | C:92D0: 01 44 02 49 06 42 08 0D 0A 52 41 20 52 42 20 52 : .D.I.B...RA RB R |
61 | C:92E0: 30 20 52 31 20 52 32 20 52 33 20 52 34 20 52 35 : 0 R1 R2 R3 R4 R5 |
62 | C:92F0: 20 52 36 20 52 37 20 20 20 20 50 53 57 20 20 20 : R6 R7 PSW |
63 | C:9300: 20 20 44 50 54 52 20 20 53 50 20 20 20 50 43 0D : DPTR SP PC. |
64 | C:9310: 8A 00 02 52 30 01 02 52 31 02 02 52 32 03 02 52 : ...R0..R1..R2..R |
65 | C:9320: 33 04 02 52 34 05 02 52 35 06 02 52 36 07 02 52 : 3..R4..R5..R6..R |
66 | C:9330: 37 E0 02 52 41 F0 02 52 42 F8 04 44 50 54 52 F9 : 7`.RAp.RBx.DPTRy |
67 | C:9340: 02 50 43 FF 0D 0A 44 50 54 52 20 BD 0D 0A 50 43 : .PC...DPTR =..PC |
68 | C:9350: 20 BD 3A 20 28 45 4E 41 29 A0 3A 20 28 44 49 53 : =: (ENA) : (DIS |
69 | C:9360: 29 A0 80 41 4C 4C FF 0D 0A 50 52 4F 43 45 53 53 : ) .ALL...PROCESS |
70 | C:9370: 49 4E 47 20 54 45 52 4D 49 4E 41 54 45 44 20 41 : ING TERMINATED A |
71 | C:9380: 54 A0 0D 0A 42 52 45 41 4B 20 4E 45 41 52 20 43 : T ..BREAK NEAR C |
72 | C:9390: 55 52 52 45 4E 54 20 50 43 20 49 47 4E 4F 52 45 : URRENT PC IGNORE |
73 | C:93A0: 44 0D 8A 11 20 30 01 50 12 B0 C0 B0 D4 10 84 D0 : D... 0.P.0@0T..P |
74 | C:93B0: 00 20 10 40 02 30 50 70 60 12 02 00 80 E0 A4 00 : . .@.0Pp`....`$. |
75 | C:93C0: 40 D0 C0 22 32 23 33 03 13 D0 80 90 C4 C0 D6 60 : @P@"2#3..P..D@V` |
76 | C:93D0: 00 02 52 30 01 02 52 31 02 02 52 32 03 02 52 33 : ..R0..R1..R2..R3
|
77 | C:93E0: 04 02 52 34 05 02 52 35 06 02 52 36 07 02 52 37 : ..R4..R5..R6..R7
|
78 | C:93F0: 08 01 41 09 01 43 0A 02 41 42 0B 04 44 50 54 52 : ..A..C..AB..DPTR
|
Ok, es hätte also gereicht im Monitor "HELP" einzugeben um an die Befehle zu kommen. Unter BASIC hatte ich das probiert, allerdings "BAD SYNTAX" als Antwort erhalten. Ok, jetzt kenn ich die Monitor-Kommandos und kann das BASIC untersuchen. (Vorerst) Ende des Monolog.
Dem folgenden Print entnehme ich, dass die Token AEh und AFh nicht existieren. Dabei hätte es sich laut MCS BASIC-52 Referenz um PGM und RROM gehandelt, welche ab V1.1 dazugekommen sind. Bei der mir vorliegenden Version 1.62 handelt es sich also sicher nicht um einen Nachfolger von BASIC-52, wozu ja auch die Jahreszahl 1989 nicht gepasst hat.
1 | C:AB00: B4 62 C2 BD C3 87 B9 D2 B9 D7 80 4C 45 54 81 43 : 4bB=C.9R9W.LET.C |
2 | C:AB10: 4C 45 41 52 82 50 55 53 48 83 47 4F 54 4F 84 50 : LEAR.PUSH.GOTO.P |
3 | C:AB20: 57 4D 85 50 48 30 2E 88 50 4F 50 89 50 52 49 4E : WM.PH0..POP.PRIN |
4 | C:AB30: 54 89 50 2E 89 3F 8A 43 41 4C 4C 8B 44 49 4D 8C : T.P..?.CALL.DIM. |
5 | C:AB40: 53 54 52 49 4E 47 8D 42 41 55 44 8E 43 4C 4F 43 : STRING.BAUD.CLOC |
6 | C:AB50: 4B 8F 50 48 31 2E 90 53 54 4F 50 91 4F 4E 54 49 : K.PH1..STOP.ONTI |
7 | C:AB60: 4D 45 92 4F 4E 45 58 31 93 52 45 54 49 94 44 4F : ME.ONEX1.RETI.DO |
8 | C:AB70: 95 52 45 53 54 4F 52 45 96 52 45 4D 97 4E 45 58 : .RESTORE.REM.NEX |
9 | C:AB80: 54 98 4F 4E 45 52 52 99 4F 4E 9A 49 4E 50 55 54 : T.ONERR.ON.INPUT |
10 | C:AB90: 9B 52 45 41 44 9C 44 41 54 41 9D 52 45 54 55 52 : .READ.DATA.RETUR |
11 | C:ABA0: 4E 9E 49 46 9F 47 4F 53 55 42 A0 46 4F 52 A1 57 : N.IF.GOSUB FOR!W |
12 | C:ABB0: 48 49 4C 45 A2 55 4E 54 49 4C A3 45 4E 44 A4 54 : HILE"UNTIL#END$T |
13 | C:ABC0: 41 42 A5 54 48 45 4E A6 54 4F A7 53 54 45 50 A8 : AB%THEN&TO'STEP(
|
14 | C:ABD0: 45 4C 53 45 A9 53 50 43 AB 49 44 4C 45 AC 53 54 : ELSE)SPC+IDLE,ST
|
15 | C:ABE0: 40 AD 4C 44 40 E0 28 E1 2A 2A E2 2A E3 2B E4 2F : @-LD@`(a**b*c+d/
|
16 | C:ABF0: E5 2D E6 2E 58 4F 52 2E E7 2E 41 4E 44 2E E8 2E : e-f.XOR.g.AND.h.
|
Hi, besitze das selbe Minicon Board und habe es nach langen probieren ans laufen bekommen. Leider kenne ich mich mit diesen Monitor Basic gar nicht aus. Gibt es dazu vielleicht Dokumentationen. Hab zwar schon mit x acc geschaft den Wert des Akkus anzuzeigen, aber nicht wie ich dessen Wert verändern kann. Mit Help konnte ich auch schon die Befehle anzeigen lassen. Da habe ich gesehen das man ein HEX File in den Speicher laden kann. Wird dabei etwa ein selbst geschriebenens Programm in den Speicher geladen und dann ausgeführt?? Frage über Fragen. Wäre schön wenn einer helfen könnte
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.