[Coco] Linville's Tech Segment on Assembly Language vs. Machine Code

Dave Philipsen dave at davebiz.com
Mon Jul 17 04:10:00 EDT 2017

I think John's analogy to katakana and kanji was pretty good.  They are 
two different alphabets that can represent Japanese words. Actually, 
katakana is pretty much an alphabet and kanji is a little abstracted 
from that.  I guess you could say that katakana is like m/l and kanji is 
like assembler. But if you spend any time in Japan and want to learn 
your way around you'll be glad if you get accustomed to both.  In fact, 
there are words that can be expressed in katakana that cannot be written 
in kanji even though kanji is much more complicated.

You definitely can learn assembler and be a good programmer without m/l 
but you will probably eventually learn some m/l just from your exposure 
to assembler.  My point is that you shouldn't dismiss it completely and 
having an understanding of it will help you in the long run.  When I 
first started 6809 assembler back in 1980 I discovered what m/l was and 
with my desire to 'take things apart' I played around with POKEs, EXECs, 
DATA statements, etc. in BASIC I learned that you could do some pretty 
cool stuff by using BASIC to create and run some m/l routines.  By the 
time we were discovering that a 32K CoCo actually had 64K and we could 
make it run in 'all RAM' mode I had written a BASIC program that 
actually had some m/l under the hood.  I had upgraded my 4K COLOR BASIC 
computer to 64K and then figured out how to get a ROM dump from my 
friend's EXTENDED COLOR BASIC computer to load into mine and actually 
run EXTENDED BASIC without the extra ROM chip.  The guys in the local 
computer club who had originally snickered at my 4K CoCo were now pretty 

By 1982 I built my own EPROM programmer from a BYTE magazine article and 
was burning my own custom 2764 ROMs and  plugging them into modified 
sockets in the CoCo.  A fluorescent germicidal bulb from the local 
lighting supply store became my eraser.  I played around with wire-wrap 
breadboards of 6809s, 6502s, Z80s and understanding m/l will help you 
get a project like that up and running too.  It's not for everybody but 
for some, it's essential.


On 7/16/2017 11:33 PM, Melanie and John Mark Mobley wrote:
> All,
> John Linville did offer for me to debate the issue on the podcast when he
> gave his last Tech Segment.
> I did not jump at the chance, perhaps I should have.
> I think John was right that you do not need to become an expert machine code
> programmer in order to learn assembly language.
> I recently worked with a Micro-KIM (Keyboard Input Monitor) from Briel
> Computers.  Which is a KIM-1 replica/work-a-like.  I was very interested in
> how the single-step function worked.  I studied the schematic and the source
> code and figured it out, mostly.  I found a website that would convert the
> assembly language to machine code and then I typed in the machine code.  I
> also found a KIM-1 emulator that runs in a browser.  The KIM-1 also has the
> ability to examine the registers.  After a few days I got my fill and I have
> not picked it up since.  But I enjoyed it.  It was fun for a time.  It is a
> good design.  I know it is not for everyone, but I really like it.
> John Mark Mobley

More information about the Coco mailing list