Forum: Mikrocontroller und Digitale Elektronik 8051 Monitor/Basic von 1989 - Kommandos?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Edson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Edson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.
C:8F20: 20 20 3E 44 42 20 72 61 6E 67 65 20 20 3E 45 42 :   >DB range  >EB
C:8F30: 20 61 64 64 72 65 73 73 20 20 3E 46 49 4C 4C 42 :  address  >FILLB
C:8F40: 20 72 61 6E 67 65 20 76 61 6C 75 65 20 20 3E 56 :  range value  >V
C:8F50: 42 20 72 61 6E 67 65 20 76 61 6C 75 65 0D 0A 63 : B range value..c
C:8F60: 6F 64 65 3A 20 20 3E 44 43 20 72 61 6E 67 65 20 : ode:  >DC range 
C:8F70: 20 3E 45 43 20 61 64 64 72 65 73 73 20 20 3E 46 :  >EC address  >F
C:8F80: 49 4C 4C 43 20 72 61 6E 67 65 20 76 61 6C 75 65 : ILLC range value
C:8F90: 20 20 3E 56 43 20 72 61 6E 67 65 20 76 61 6C 75 :   >VC range valu
C:8FA0: 65 0D 0A 64 61 74 61 3A 20 20 3E 44 44 20 72 61 : e..data:  >DD ra
C:8FB0: 6E 67 65 20 20 3E 45 44 20 61 64 64 72 65 73 73 : nge  >ED address
C:8FC0: 20 20 3E 46 49 4C 4C 44 20 72 61 6E 67 65 20 76 :   >FILLD range v
C:8FD0: 61 6C 75 65 20 20 3E 56 44 20 72 61 6E 67 65 20 : alue  >VD range 
C:8FE0: 76 61 6C 75 65 0D 0A 69 64 61 74 61 3A 20 3E 44 : value..idata: >D
C:8FF0: 49 20 72 61 6E 67 65 20 20 3E 45 49 20 61 64 64 : I range  >EI add
C:9000: 72 65 73 73 20 20 3E 46 49 4C 4C 49 20 72 61 6E : ress  >FILLI ran
C:9010: 67 65 20 76 61 6C 75 65 20 20 3E 56 49 20 72 61 : ge value  >VI ra
C:9020: 6E 67 65 20 76 61 6C 75 65 0D 0A 78 64 61 74 61 : nge value..xdata
C:9030: 3A 20 3E 44 58 20 72 61 6E 67 65 20 20 3E 45 58 : : >DX range  >EX
C:9040: 20 61 64 64 72 65 73 73 20 20 3E 46 49 4C 4C 58 :  address  >FILLX
C:9050: 20 72 61 6E 67 65 20 76 61 6C 75 65 20 20 3E 56 :  range value  >V
C:9060: 58 20 72 61 6E 67 65 20 76 61 6C 75 65 0D 0A 0D : X range value...
C:9070: 0A 20 70 72 6F 67 72 61 6D 20 65 78 65 63 75 74 : . program execut
C:9080: 69 6F 6E 20 20 20 20 20 20 20 20 20 20 20 20 20 : ion             
C:9090: 20 62 72 65 61 6B 70 6F 69 6E 74 28 73 29 20 20 :  breakpoint(s)  
C:90A0: 20 20 20 20 70 72 6F 67 72 61 6D 20 6C 6F 61 64 :     program load
C:90B0: 2F 73 61 76 65 0D 0A 3E 47 20 5B 61 64 64 72 65 : /save..>G [addre
C:90C0: 73 73 5D 20 5B 2C 62 72 65 61 6B 61 64 64 5D 20 : ss] [,breakadd] 
C:90D0: 2D 20 67 6F 20 20 3E 42 44 20 62 70 20 2D 20 64 : - go  >BD bp - d
C:90E0: 69 73 61 62 6C 65 20 20 20 3E 3A 68 65 78 5F 72 : isable   >:hex_r
C:90F0: 65 63 20 2D 20 6C 6F 61 64 20 69 6E 74 65 6C 20 : ec - load intel 
C:9100: 68 65 78 0D 0A 3E 54 20 5B 63 6F 75 6E 74 5D 20 : hex..>T [count] 
C:9110: 2D 20 74 72 61 63 65 20 73 74 65 70 20 20 20 20 : - trace step    
C:9120: 20 20 20 20 3E 42 45 20 62 70 20 2D 20 65 6E 61 :     >BE bp - ena
C:9130: 62 6C 65 20 20 20 20 3E 53 20 72 61 6E 67 65 20 : ble    >S range 
C:9140: 2D 20 73 61 76 65 20 69 6E 74 65 6C 20 68 65 78 : - save intel hex
C:9150: 0D 0A 3E 50 20 5B 63 6F 75 6E 74 5D 20 2D 20 70 : ..>P [count] - p
C:9160: 72 6F 63 65 64 75 72 65 20 73 74 65 70 20 20 20 : rocedure step   
C:9170: 20 3E 42 4B 20 62 70 20 2D 20 6B 69 6C 6C 0D 0A :  >BK bp - kill..
C:9180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :                 
C:9190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3E :                >
C:91A0: 42 4C 20 2D 20 6C 69 73 74 0D 0A 20 20 20 20 20 : BL - list..     
C:91B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :                 
C:91C0: 20 20 20 20 20 20 20 20 20 20 3E 42 53 20 61 64 :           >BS ad
C:91D0: 64 72 65 73 73 20 2D 20 73 65 74 0D 0A 20 75 74 : dress - set.. ut
C:91E0: 69 6C 69 74 79 0D 0A 3E 41 20 61 64 64 72 65 73 : ility..>A addres
C:91F0: 73 20 2D 20 61 73 73 65 6D 62 6C 65 20 20 20 20 : s - assemble    
C:9200: 20 20 20 20 20 20 3E 4D 58 20 78 72 61 6E 67 65 :       >MX xrange
C:9210: 20 64 65 73 74 20 2D 20 6D 6F 76 65 20 78 64 61 :  dest - move xda
C:9220: 74 61 0D 0A 3E 55 20 72 61 6E 67 65 20 2D 20 64 : ta..>U range - d
C:9230: 69 73 61 73 73 65 6D 62 6C 65 20 20 20 20 20 20 : isassemble      
C:9240: 20 20 20 3E 4D 43 20 63 72 61 6E 67 65 20 64 65 :    >MC crange de
C:9250: 73 74 20 2D 20 6D 6F 76 65 20 63 64 61 74 61 0D : st - move cdata.
C:9260: 0A 3E 58 20 5B 72 65 67 69 73 74 65 72 5D 20 2D : .>X [register] -
C:9270: 20 64 69 73 70 2F 63 68 61 6E 67 65 20 20 20 20 :  disp/change    
C:9280: 3E 42 41 53 49 43 20 2D 20 20 62 61 73 69 63 20 : >BASIC -  basic 
C:9290: 69 6E 74 65 72 70 72 65 74 65 72 0D 0A 3E 48 45 : interpreter..>HE
C:92A0: 4C 50 20 2D 20 64 69 73 70 6C 61 79 20 6D 65 6E : LP - display men
C:92B0: 75 20 20 20 20 20 20 20 20 20 20 20 3E 4D 41 50 : u           >MAP
C:92C0: 20 5B 62 61 73 69 63 72 61 6D 5D 0D 8A 43 00 58 :  [basicram]..C.X
C:92D0: 01 44 02 49 06 42 08 0D 0A 52 41 20 52 42 20 52 : .D.I.B...RA RB R
C:92E0: 30 20 52 31 20 52 32 20 52 33 20 52 34 20 52 35 : 0 R1 R2 R3 R4 R5
C:92F0: 20 52 36 20 52 37 20 20 20 20 50 53 57 20 20 20 :  R6 R7    PSW   
C:9300: 20 20 44 50 54 52 20 20 53 50 20 20 20 50 43 0D :   DPTR  SP   PC.
C:9310: 8A 00 02 52 30 01 02 52 31 02 02 52 32 03 02 52 : ...R0..R1..R2..R
C:9320: 33 04 02 52 34 05 02 52 35 06 02 52 36 07 02 52 : 3..R4..R5..R6..R
C:9330: 37 E0 02 52 41 F0 02 52 42 F8 04 44 50 54 52 F9 : 7`.RAp.RBx.DPTRy
C:9340: 02 50 43 FF 0D 0A 44 50 54 52 20 BD 0D 0A 50 43 : .PC...DPTR =..PC
C:9350: 20 BD 3A 20 28 45 4E 41 29 A0 3A 20 28 44 49 53 :  =: (ENA) : (DIS
C:9360: 29 A0 80 41 4C 4C FF 0D 0A 50 52 4F 43 45 53 53 : ) .ALL...PROCESS
C:9370: 49 4E 47 20 54 45 52 4D 49 4E 41 54 45 44 20 41 : ING TERMINATED A
C:9380: 54 A0 0D 0A 42 52 45 41 4B 20 4E 45 41 52 20 43 : T ..BREAK NEAR C
C:9390: 55 52 52 45 4E 54 20 50 43 20 49 47 4E 4F 52 45 : URRENT PC IGNORE
C:93A0: 44 0D 8A 11 20 30 01 50 12 B0 C0 B0 D4 10 84 D0 : D... 0.P.0@0T..P
C:93B0: 00 20 10 40 02 30 50 70 60 12 02 00 80 E0 A4 00 : . .@.0Pp`....`$.
C:93C0: 40 D0 C0 22 32 23 33 03 13 D0 80 90 C4 C0 D6 60 : @P@"2#3..P..D@V`
C:93D0: 00 02 52 30 01 02 52 31 02 02 52 32 03 02 52 33 : ..R0..R1..R2..R3
C:93E0: 04 02 52 34 05 02 52 35 06 02 52 36 07 02 52 37 : ..R4..R5..R6..R7
C:93F0: 08 01 41 09 01 43 0A 02 41 42 0B 04 44 50 54 52 : ..A..C..AB..DPTR

von Edson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Edson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

C:AB00: B4 62 C2 BD C3 87 B9 D2 B9 D7 80 4C 45 54 81 43 : 4bB=C.9R9W.LET.C
C:AB10: 4C 45 41 52 82 50 55 53 48 83 47 4F 54 4F 84 50 : LEAR.PUSH.GOTO.P
C:AB20: 57 4D 85 50 48 30 2E 88 50 4F 50 89 50 52 49 4E : WM.PH0..POP.PRIN
C:AB30: 54 89 50 2E 89 3F 8A 43 41 4C 4C 8B 44 49 4D 8C : T.P..?.CALL.DIM.
C:AB40: 53 54 52 49 4E 47 8D 42 41 55 44 8E 43 4C 4F 43 : STRING.BAUD.CLOC
C:AB50: 4B 8F 50 48 31 2E 90 53 54 4F 50 91 4F 4E 54 49 : K.PH1..STOP.ONTI
C:AB60: 4D 45 92 4F 4E 45 58 31 93 52 45 54 49 94 44 4F : ME.ONEX1.RETI.DO
C:AB70: 95 52 45 53 54 4F 52 45 96 52 45 4D 97 4E 45 58 : .RESTORE.REM.NEX
C:AB80: 54 98 4F 4E 45 52 52 99 4F 4E 9A 49 4E 50 55 54 : T.ONERR.ON.INPUT
C:AB90: 9B 52 45 41 44 9C 44 41 54 41 9D 52 45 54 55 52 : .READ.DATA.RETUR
C:ABA0: 4E 9E 49 46 9F 47 4F 53 55 42 A0 46 4F 52 A1 57 : N.IF.GOSUB FOR!W
C:ABB0: 48 49 4C 45 A2 55 4E 54 49 4C A3 45 4E 44 A4 54 : HILE"UNTIL#END$T
C:ABC0: 41 42 A5 54 48 45 4E A6 54 4F A7 53 54 45 50 A8 : AB%THEN&TO'STEP(
C:ABD0: 45 4C 53 45 A9 53 50 43 AB 49 44 4C 45 AC 53 54 : ELSE)SPC+IDLE,ST
C:ABE0: 40 AD 4C 44 40 E0 28 E1 2A 2A E2 2A E3 2B E4 2F : @-LD@`(a**b*c+d/
C:ABF0: E5 2D E6 2E 58 4F 52 2E E7 2E 41 4E 44 2E E8 2E : e-f.XOR.g.AND.h.

von Edson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
sollte heissen: der mir vorliegenden Version 1.26

von blutengel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.