Loading ...
Sorry, an error occurred while loading the content.

31393RE: [midatlanticretro] TASM for 6800 assembly

Expand Messages
  • B Degnan
    Jun 23, 2013
    • 0 Attachment

      Dan

      Thank you very much.  Now I understand.  I thought TASM was the go-to assembler for any processor, I see at least for 6800’s  it’s simply easier to use something more MIKBUG compatible, and now I understand why things are the way they are.  I only know the coding part, how to read the instructions themselves. 

       

      6800 itself is pretty easy to work with, a good language to learn assembly.  I am making a primitive monitor extension for SWTBUG to make it easier to load and run TSC BASIC on eProm by storing it in C100 and moving to 0100.  I also want to put in a simple memory dump array program.  This way, when I am using a teletype I only have to load and save BASIC programs themselves, not wait 25 minutes to load BASIC by tape before I can even start working on something. 

      Bill

       

      From: midatlanticretro@yahoogroups.com [mailto:midatlanticretro@yahoogroups.com] On Behalf Of Dan Roganti
      Sent: Sunday, June 23, 2013 12:55 AM
      To: midatlanticretro@yahoogroups.com
      Subject: Re: [midatlanticretro] TASM for 6800 assembly

       



      it's getting late....

      the patch should go in the beginning

       

      ----------------------------------------------------------

      ;CONVERT TABLE TO BIG-ENDIAN

      ;ONLY DONE ONCE IN PROGRAM

      ;

           LDX #TABLE         ;GET POINTER TO TABLE

           INX       ;INC X TO POINT TO LO-BYTE

      CONVRT    LDAB 0,X           ;GET LO-BYTE

           INX       ;INC X TO POINT TO HI-BYTE

           LDAA 0,X  ;GET HI-BYTE

           STAB 0,X  ;PUT THE LO-BYTE IN BIG-ENDIAN

           DEX       ;DEC TO POINT TO LO-BYTE

           STAA 0,X  ;PUT THE HI-BYTE IN BIG-ENDIAN

      ;

           CPX #TABLAST    ;LAST ENTRY ?

           BEQ U2708          ;YES, EXIT LOOP

           INX                ;POINT TO NEXT ENTRY

           INX

           INX

           BRA CONVRT      ;LOOP FOR NEXT ENTRY

      ;----------------------------------------------------------

      ; START

      U2708     LDS #$A042    ;GET STACKED

      .

      .

      .

      This line gets a new label

      TABLAST   .WORD TABEND  ; NEW LABEL FOR LAST ENTRY OF TABLE

      .

      .

      .

      ;----------------------------------------------------------

       

       

       




    • Show all 8 messages in this topic