Pierpaolo
07-31-02, 11:56 AM
Hello to everyone,
this time I've come up with something I don't understand and that could be
a trifle for some more experienced coders. Here is an extract from a .lst file:
000001 0000 ;TABELLA INDIRIZZI DATI
000002 0000 ;
000003 0000 ;9000 0A stp1
000004 0000 ;9001 09 stp2
000005 0000 ;9002 05 stp3
000006 0000 ;9003 06 stp4
000007 0000 ;9004 00 D step del tratto orizzontale
000008 0000 ;9005 00 x/y contatore ascissa
000009 0000 ;9006 00 RL risultato prodotto Dord*asc Byte basso
000010 0000 ;9007 00 RH risultato prodotto Dord*asc Byte alto
000011 0000 ;9008 00 PR risultato precedente step dell'ordinata
000012 0000 ;9009 00 AT risultato attuale step dell'ordinata
000013 0000 ;900A 00 I risultato divisione (Dord*asc)/DEN
000014 0000 ;900B 00 DEN denominatore della pendenza (DX/DY o DY/DX)
000015 0000 ;900C 00 OUT Byte da mandare in output sulla porta P1
000016 0000 ;900D 00 CSL contatore segmenti fatti basso
000017 0000 ;900E 00 CSH contatore segmenti fatti alto
000018 0000 ;900F 00 RCL numero segmenti da fare basso
000019 0000 ;9010 00 RCH numero segmenti da fare alto
000020 0000 ;9011 00 h'A0 Byte alto del DPTR per puntare i DXi, DYi
000021 0000 ;
000022 0000 ;9014 00 null
000023 0000 ;9015 DX1
000024 0000 ;9016 DY1
000025 0000 ;
000026 0000 ;
000027 0000 ;9333 DX400
000028 0000 ;9334 DY400
000029 8000 .org h'8000
000030 8000
000031 8000 start:
000032 8000 909004 mov DPTR,#h'9004
000033 8003 ; metto in a la distanza del tratto orizzontale
000034 8003 ; iniziale in step per il motore X
000035 8003 E0 movx a,@DPTR
000036 8004 FA mov R2,a ; metto in R2 gli step da contare
000037 8005 7C00 mov R4,#h'00 ; azzero R4 che e' il puntatore agli step
000038 8007 ; da mandare in output al motore X
000039 8007 7D00 mov R5,#h'00 ; azzero R5 che e' il puntatore agli step
000040 8009 ; da mandare in output al motore Y
000041 8009 90900C mov DPTR,#h'900C
000042 800C 74AA mov a,#h'AA ; inizializzo agli step iniziali 0A e A0
000043 800E F0 movx @DPTR,a ; i valori di output per i motori X e Y
000044 800F F590 mov P1,a ; invio il segnale ai motori X e Y
000045 8011 ;
000046 8011 ; ============ PRIMO TRATTO ORIZZONTALE ====================================
000047 8011 ;
000048 8011 tratto1:
000049 8011 909000 mov DPTR,#h'9000
000050 8014 EC mov a,R4
bla
bla !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! BELOW IS THE PROBLEM
bla
000448 825C loop7:
000449 825C DFFE djnz R7,loop7
000450 825E D9FA djnz R1,loop1
000451 8260 22 ret
000452 8261 ;******************************* D A T I *************
000453 8261 000000 .org h'8300
^
***** Warning ***** undefined opcode
000454 8264 000000 db h'0A
^
***** Warning ***** undefined opcode
000455 8267 000000 db h'09
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
bla
bla TRY WITHOUT THE PERIOD BUT NO DICE
bla
^
***** Warning ***** undefined opcode
000460 8276 000000 .db h'00
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
000461 8279 000000 .db 00h
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
000462 827C 000000 .db 00h
^
***** Warning ***** attempt to redefine symbol
etc
etc
Could anyone be so kind and explain to me where I am mistaking.
Thanks a lot for any help
this time I've come up with something I don't understand and that could be
a trifle for some more experienced coders. Here is an extract from a .lst file:
000001 0000 ;TABELLA INDIRIZZI DATI
000002 0000 ;
000003 0000 ;9000 0A stp1
000004 0000 ;9001 09 stp2
000005 0000 ;9002 05 stp3
000006 0000 ;9003 06 stp4
000007 0000 ;9004 00 D step del tratto orizzontale
000008 0000 ;9005 00 x/y contatore ascissa
000009 0000 ;9006 00 RL risultato prodotto Dord*asc Byte basso
000010 0000 ;9007 00 RH risultato prodotto Dord*asc Byte alto
000011 0000 ;9008 00 PR risultato precedente step dell'ordinata
000012 0000 ;9009 00 AT risultato attuale step dell'ordinata
000013 0000 ;900A 00 I risultato divisione (Dord*asc)/DEN
000014 0000 ;900B 00 DEN denominatore della pendenza (DX/DY o DY/DX)
000015 0000 ;900C 00 OUT Byte da mandare in output sulla porta P1
000016 0000 ;900D 00 CSL contatore segmenti fatti basso
000017 0000 ;900E 00 CSH contatore segmenti fatti alto
000018 0000 ;900F 00 RCL numero segmenti da fare basso
000019 0000 ;9010 00 RCH numero segmenti da fare alto
000020 0000 ;9011 00 h'A0 Byte alto del DPTR per puntare i DXi, DYi
000021 0000 ;
000022 0000 ;9014 00 null
000023 0000 ;9015 DX1
000024 0000 ;9016 DY1
000025 0000 ;
000026 0000 ;
000027 0000 ;9333 DX400
000028 0000 ;9334 DY400
000029 8000 .org h'8000
000030 8000
000031 8000 start:
000032 8000 909004 mov DPTR,#h'9004
000033 8003 ; metto in a la distanza del tratto orizzontale
000034 8003 ; iniziale in step per il motore X
000035 8003 E0 movx a,@DPTR
000036 8004 FA mov R2,a ; metto in R2 gli step da contare
000037 8005 7C00 mov R4,#h'00 ; azzero R4 che e' il puntatore agli step
000038 8007 ; da mandare in output al motore X
000039 8007 7D00 mov R5,#h'00 ; azzero R5 che e' il puntatore agli step
000040 8009 ; da mandare in output al motore Y
000041 8009 90900C mov DPTR,#h'900C
000042 800C 74AA mov a,#h'AA ; inizializzo agli step iniziali 0A e A0
000043 800E F0 movx @DPTR,a ; i valori di output per i motori X e Y
000044 800F F590 mov P1,a ; invio il segnale ai motori X e Y
000045 8011 ;
000046 8011 ; ============ PRIMO TRATTO ORIZZONTALE ====================================
000047 8011 ;
000048 8011 tratto1:
000049 8011 909000 mov DPTR,#h'9000
000050 8014 EC mov a,R4
bla
bla !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! BELOW IS THE PROBLEM
bla
000448 825C loop7:
000449 825C DFFE djnz R7,loop7
000450 825E D9FA djnz R1,loop1
000451 8260 22 ret
000452 8261 ;******************************* D A T I *************
000453 8261 000000 .org h'8300
^
***** Warning ***** undefined opcode
000454 8264 000000 db h'0A
^
***** Warning ***** undefined opcode
000455 8267 000000 db h'09
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
bla
bla TRY WITHOUT THE PERIOD BUT NO DICE
bla
^
***** Warning ***** undefined opcode
000460 8276 000000 .db h'00
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
000461 8279 000000 .db 00h
^
***** Warning ***** attempt to redefine symbol
^
***** Warning ***** undefined opcode
000462 827C 000000 .db 00h
^
***** Warning ***** attempt to redefine symbol
etc
etc
Could anyone be so kind and explain to me where I am mistaking.
Thanks a lot for any help