[Coco] TVBUG Assembler Source Needed

Neal Crook foofoobedoo at gmail.com
Tue Aug 2 16:13:34 EDT 2016


>>Since the source listing is landscaped and "two column"
save as text and edit in a text editor that supports rectangular selection
(eg EMACS).

I split the PDF and submitted one page to http://www.onlineocr.net/to be
ocr'd and converted to text. I then used emacs
to de-2-column it  and delete trailing whitespace. In comparison to the
original, there are errors but better than typing in
from scratch. Also, it would need processing to convert from an assembler
listing to an assemblable source, but that
could be handled with a dozen lines of PERL. The file could be processed
into a hex dump and a source listing then
you could assemble it and diff the result against the hex dump and iterate
(editing typos in both) until they match. Hope
for a rainy day!

There is an OCR'd text version on the Internet Archive but the OCR wnet
badly wrong when it came to the code
listing:

https://archive.org/stream/bitsavers_motorola689_10534990/MicroChroma_68_Oct79_djvu.txt

Neal.

(here's one page)
01260
01261
01262                      OPBCYT
01263
01264                    * THIS ROUTINE DETERMINES THE # OF BYTES
01265                       IN AN INSTRUCTION
01266                      GIVEN ITS OP CODE.
01267
01268                    * INPUT: A HOLDS THE   OP CODE
01269
01270                      OUTPUT: X HOLDS INDEX OF TABLE ELEMENT
01271                    * B NOT RESTORED
01272                    * A HOLDS # BYTES IN   INSTRUCTION
01273                    * EXCEPT FOR BRANCHES   IN WHICH CASE A IS NEGATIVE
01274
01275                    ************************
01276
01277           FDAF   A OPCBYT EQU     *
01278A FDAF 16                   TAB              B:= OP CODE
01279A FDBO 44                   LSRA
01280A FDB/ 44                   LSRA
01281A FDB2 44                   LSRA             PUT 4 UPPER BITS OF OP
CODE INTO
01282A FDB3 44                   LSRA             LOWER 4 BITS OF A
01283
01284A FDB4 CE FDCD    A         LDX    #OPBTTB   X= ADDRESS OF TABLE
01285A FDB7 8D B6 FD6F           BSR    INCX      INC X TO POINT TO ENTRY
01286
01287A FDB9 A6 00      A         LDAA   0,X       GET TABLE ENTRY
01288A FDBB 26 OF FDCC           BNE    OPBTRT    IF NOT 0 THEN NO FURTHER
01289                                                    PROCESSING NEEDED
01290
01291                    * IF TOP 4 BITS = 8 OR   C, THEN THERE ARE TWO
CLASSES
01292                    * OF INSTRUCTIONS:   2 BYTE INSTRUCTIONS
AND                             /
01293                    * CE, 8C AND 8E WHICH ARE 3 BYTE INSTRUCTIONS
01294
01295A FDBD 86 02      A         LDAA   #2        # BYTES IN MOST OF 8#
INSTRUCTION               TEX/
01296A FDBF Cl 8C      A         CMPB   #$8C      3 BYTE INSTRUCTION?
01297A FDC1 27 08 FDCB           BEQ    OPBT3     YES, UPDATE
A                                         5/
01298A FDC3 Cl CE      A         CMPB   #$CE      3 BYTE IN8TR?
01299A FDC5 27 04 FDCB           BEQ    OPBT3     YES, UPDATE A
01300A FDC7 Cl 8E      A         CMPB   11$8E     3 BYTE INSTRUCTION?
01301A FDC9 26 01 FDCC           BNE    OPBTRT    NO, RETURN
01302
01303A FDCB 4C           OPBT3   INCA             # BYTES IN INSTRUCTION:=3
01304
01305A FDCC 39           OPBTRT RTS               RETURN TO CALLER

01307
01308                    * OP CODE TO NUMBER OF BYTES CONVERSION TABLE
01309
01310                                 # BYTES   TOP 4 BITS OF OPCODE
01311
01312
01313            FDCD  A OPBTTB  EQU
01314A  FDCD     01    A         FCB    1         0
01315A  FDCE     01    A         FCB    1         1
01316A  FDCF     82    A         FCB    2+810000000 2   (MINUS=" BRANCHES)
01317A  FDDO     01    A         FCB    1         3
01318A  FDD1     01    A         FCB    1         4
01319A  FDD2     01    A         FCB    1         5
01320A  FDD3     02    A         FCB    2         6
01321A  FDD4     03    A         FCB    3         7
013,2A  FOGS     00    A         FCB    0         8 # BYTES=2 EXCEPT 8C,8E
01323A  FDD6     02    A         FCB    2         9
01324A  FDD7     02    A         FCB    2         A
01325A  FDD8     03    A         FCB    3
01326A  FDD9     00    A         FCB    0         C # BYTES=2 EXCEPT CE
01327A  FDDA     02    A         FCB    2
01328A  FMB      02    A         FCB    2
01329A  FDDC     03    A         FCB    3

01331
01332                    * CONSTANT  DATA
01333
01334A  FDDD     56    A MCL2    FCC    /VDG DEBUG SYSTEM
01335A  FDED     3B    A         FCC    /;TV-BUG VER 1.2/
01336A  FDFC     OD    A         FCB    $D
01337A  FDFD     4D    A         FCC    /MOTOROLA-AUSTIN
01338A  FEIO     04    A         FCB    4
01339A  FEU      43    A MCL3    FCC    /CCBAXP
01340A  FE26     04    A         FCB    4
01341A  FE27     OD    A MCL4    FCB    $D
01342A  FE28     42    A         FCC    /BEG ADR? /
01343A  FE31     04    A         FCB    4
01344A  FE32     45    A MCL5    FCC    /END ADR? /
01345A  FE3B     04    A         FCB    4
01346A  FE3C     20    A NCHG    FCC    / MEMORY BAD!/
01347A  FE48     04    A         FCB    4
01348A  FE49     OD    A READY   FCB    $D
01349A  FE4A     54    A         FCC    /TVBUG/
01350A  FE4F     OD    A         FCB    $0,4
01351A  FE51     OD    A OFSET   FCB    $D
01352A  FE52     4F    A         FCC    /OFFSET=/
01353A  FE59     04    A         FCB    4
01354A  FESA     54    A BADJP   FCC    /TOO FAR!/
01355A  FE62     04    A         FCB    4
01356A  FE63     OD    A FILLMS  FCB    $D
01357A  FE64     43    A         FCC    /CHAR?/
01358A  FE69     04    A         FCB    4
01359

On 2 August 2016 at 20:52, William Carlin <whcarlinjr at gmail.com> wrote:

> Used the PDF from this source:
>
> http://www.68bits.com/micro-chroma-68.html
>
> Extracted the pages for the source listing and then converted to a MS Word
> format (to force OCR of the source code).  The result is good but not
> exact.  I see some zeros are construed as the letter 'O'.  Since the source
> listing is landscaped and "two column" I think it would take just as long
> to copy/paste everything into the proper order as it would to type the
> listing in manually.  Regardless, I am going to send you the resultant Word
> document to your listed email address so you can inspect it for yourself.
>
>
> On Mon, Aug 1, 2016 at 11:04 PM, Kip Koon <computerdoc at sc.rr.com> wrote:
>
> > Hi Guys,
> >
> > I'm looking for the Source Code to Motorola's Micro Chroma 68 TVBUG
> monitor
> > program in Assembler Source Code form.  I want to try my hand at creating
> > some form of the Micro Chroma 68 from scratch.  I have Motorola's Micro
> > Chroma 68 Manual in pdf form, but I'd rather not have to type the whole
> > program from scratch.  :)  The binary is only 2KBs, but the assembler
> > output
> > listing is hundreds of lines long.  If anyone has any information, tips,
> > ideas, suggestions, etcetera on how to secure a copy of this software as
> > well as the system itself, please let me know.  Thank you all in advance
> > for
> > any help you can give.
> >
> >
> >
> > Kip Koon
> >
> >  <mailto:computerdoc at sc.rr.com> computerdoc at sc.rr.com
> >
> >  <http://www.cocopedia.com/wiki/index.php/Kip_Koon>
> > http://www.cocopedia.com/wiki/index.php/Kip_Koon
> >
> >
> >
> >
> >
> >
> > --
> > Coco mailing list
> > Coco at maltedmedia.com
> > https://pairlist5.pair.net/mailman/listinfo/coco
> >
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


More information about the Coco mailing list