Twiggys [was: Re: ka... ching!]

Ian S. King isking at uw.edu
Sun Oct 9 19:08:11 CDT 2016


On Sun, Oct 9, 2016 at 3:07 PM, Brad H <vintagecomputer at bettercomputing.net>
wrote:

>
>
> -------- Original message --------
> From: "Ian S. King" <isking at uw.edu>
> Date: 2016-10-09  2:30 PM  (GMT-08:00)
> To: "General Discussion: On-Topic and Off-Topic Posts" <
> cctalk at classiccmp.org>
> Subject: Re: Twiggys [was: Re: ka... ching!]
>
> On Sun, Oct 9, 2016 at 2:37 AM, Dave G4UGM <dave.g4ugm at gmail.com> wrote:
>
> > > -----Original Message-----
> > > From: cctalk [mailto:cctalk-bounces at classiccmp.org] On Behalf Of Brad
> H
> > > Sent: 09 October 2016 07:41
> > > To: General Discussion: On-Topic and Off-Topic Posts
> > > <cctalk at classiccmp.org>; jwsmail at jwsss.com
> > > Subject: Re: Twiggys [was: Re: ka... ching!]
> > >
> > >
> > >
> > > I'd like to learn more about programming, esp for my 6800.  It'd be fun
> > to test
> > > its limits and see what uses I can find for the graphics board I got. I
> > just don't
> > > understand how they programmed the thing. All the hex stuff throws me
> > > off.  :)
> >
> > Does it have a serial interface and memory. In which case it was probably
> > programmed in Assembler.
> > When I started with 6800 board and 256 bytes of memory, and toggle
> > switches to load it I used to hand assemble the programs to get the
> > hex/binary.
> > I soon got bored of the toggle switches and built a little box with an
> old
> > calculator keyboard and display and some TTL so I could enter data
> quickly.
> >
> >
> > Dave
> >
> > I recently acquired a SWTPC 6800, a machine I remember from when it was
> new.  :-)  There are many programming environments available for it - I'm
> working to get Forth running on mine, then I'll branch out.
>
> It's been said that the 6800 inherited a lot of ideas from the PDP-8, and I
> agree with that to some extent.  The ISA is actually very clean and neat,
> once you wrap your head around it - I used to program 6800 assembler
> professionally, my first paid job as a programmer!  Unlike the PDP-8, I/O
> is memory-mapped.  Depending on what monitor ROM you have (if any), you may
> have different system services available.  One very useful system is the
> one that can read S-records from the serial input, allowing you to easily
> transfer programs onto the machine.
>
> If you want to grok the 6800 in fullness, there are online scans of
> Motorola's programming manual for the device.  Another great resource is
> the swtpc.com site, even if you don't have a SWTPC machine (what do you
> have?).
>
> Have fun with it!  Cheers -- Ian
>
> --
> Ian S. King, MSIS, MSCS, Ph.D. Candidate
> The Information School <http://ischool.uw.edu>
> Dissertation: "Why the Conversation Mattered: Constructing a Sociotechnical
> Narrative Through a Design Lens
>
> Archivist, Voices From the Rwanda Tribunal <http://tribunalvoices.org>
> Value Sensitive Design Research Lab <http://vsdesign.org>
>
> University of Washington
>
> >There is an old Vulcan saying: "Only Nixon >could go to China."
>
> I've an original SWTPC 6800.  Also have an ASCI System X and a Tektronix
> 6800 board bucket.  Right now I'm enjoying working with the SWTPC.  I'm
> trying to deck it out as completely as one could have.
> I don't quite understand assembly.. I assume to program in that, as with
> BASIC you need to load an 'assembler' language first?  I tried this with my
> Digital Group system with 5 different tapes marked 'assembler' but never
> got them to load.  Not sure if I understand the concept.


The assembler is a program that transforms (somewhat) human-readable text
into machine code.  There a few ways to go about structuring this
workflow.  So far I've been using a cross-assembler that runs on a
different system - for example, the original UNIX was cross-assembled on a
GE-635 mainframe for its PDP-7 target.  There are native assemblers as
well.  These often assumed some sort of secondary store, whether punched
tape, magtape or disk, that might hold intermediate stages of assembly and
certainly the final product.  A common workflow was:

- load native assembler program from <media>
- start native assembler program
- tell native assembler program where to find the source (which media)
- native assembler reads in source, transforms it to object (machine code),
sends the results to <media>
- programmer loads object from <media> and runs it

If you're loading an assembler program from tape, you probably need to give
the monitor a 'go' instruction once it's completed (that's how MIKBUG
works, anyway).  The assembler may prompt for the input source or may just
assume that once you say 'go' a tape is loaded and ready to be read.

How do you create the source?  If you're doing it natively, you need an
editor that runs on the platform and can send the resulting text to
<media>.  Or again, you can write your assembly source on another platform
and create (or emulate) appropriate <media>.

I hope that helps.  Cheers -- Ian

-- 
Ian S. King, MSIS, MSCS, Ph.D. Candidate
The Information School <http://ischool.uw.edu>
Dissertation: "Why the Conversation Mattered: Constructing a Sociotechnical
Narrative Through a Design Lens

Archivist, Voices From the Rwanda Tribunal <http://tribunalvoices.org>
Value Sensitive Design Research Lab <http://vsdesign.org>

University of Washington

There is an old Vulcan saying: "Only Nixon could go to China."


More information about the cctalk mailing list