• Re: Assembler for Learning Assembly Language Programming ORCA vsMerlin

    From Dave Touvell@21:1/5 to Dave Touvell on Wed Dec 15 17:58:54 2021
    On Wednesday, August 21, 2019 at 9:23:35 PM UTC-4, Dave Touvell wrote:
    On Wednesday, August 21, 2019 at 9:08:42 PM UTC-4, Antoine Vignau wrote:
    OK Denis. I never used the Merlin icons :-)
    Antoine
    Denis is right, the file is apparently corrupt. I used DicEd to open the files and the icon for Converter is corrupt and for the Interals CDA is missing. The v4.08 icons file is fine, so I just used it.

    Thanks again for making the package available, though!

    -Dave

    Well, 2 years later and I still haven't learned assembly language. Life happened, but we just sold our house and when I was packing up to move, I got a little nostalgic about the Apple II stuff again. Hopefully I can find some time to get back into it
    after the first of the year.

    Hope everyone has a Merry Christmas/Happy Holidays.

    -Dave

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From D Finnigan@21:1/5 to All on Thu Dec 16 03:28:21 2021
    Has anyone ever thought about how Woz learned 6502 assembly language for the Apple I and Apple II? I have wondered it a few times when I look at Monitor source and think about the integer BASIC that he wrote. How long did it take him to learn 6502 and become proficient enough to write Monitor, BASIC, and other utilities for the Apple? Did Woz know assembly for another CPU?

    6502 was a fairly new CPU, and even though based on the earlier Motorola
    6800, neither one had been out for more than a few years by the time the
    Apple I and II were introduced in '76 and '77.

    He had others around to help him, at least to the extent of answering his questions or loaning him technical docs; this is certain.

    Anyone know more about how Woz learned to program the 6502?

    --
    ]DF$
    The New Apple II User's Guide:
    https://macgui.com/newa2guide/

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From awanderin@21:1/5 to D Finnigan on Thu Dec 16 00:41:41 2021
    D Finnigan <dog_cow@macgui.com> writes:

    Has anyone ever thought about how Woz learned 6502 assembly language for the Apple I and Apple II? I have wondered it a few times when I look at Monitor source and think about the integer BASIC that he wrote. How long did it take him to learn 6502 and become proficient enough to write Monitor, BASIC, and other utilities for the Apple? Did Woz know assembly for another CPU?

    6502 was a fairly new CPU, and even though based on the earlier Motorola 6800, neither one had been out for more than a few years by the time the Apple I and II were introduced in '76 and '77.

    He had others around to help him, at least to the extent of answering his questions or loaning him technical docs; this is certain.

    Anyone know more about how Woz learned to program the 6502?

    No idea how Woz learned 6502, but I'll guess.

    Woz says that he designed many computers before he actually built the
    Apple I. He talked about how he obsessed over things, like how many
    chips in a design. I suspect he also obsessed over the details in data
    books and manuals for computers. He basically crammed his mind full of
    every detail he could find.

    I would bet he probably studied the opcodes, and constantly thought
    about the result he wanted to achieve. His intense concentration and
    his subconscious probably helped a ton.

    One example is the binary-to-decimal converter he wrote. I cannot find
    it right now, but I recall he used shifts (ASL) with BCD-mode (SED), and
    came up with a pretty clever way to convert a number for printing.
    It seems like he tried to think of every possible way to use the
    different 6502 instructions. Maybe, that's how he came up with this
    stuff?

    The other thing is, he had already built many electronic devices, and understood digital logic circuits really well. When he looked at the
    6502 data book, he probably figured out how it worked inside. It might
    have not been too much more effort for him to put those opcodes to use.

    --
    --
    Jerry awanderin at gmail dot com

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Michael J. Mahon@21:1/5 to awanderin on Sat Dec 18 01:16:04 2021
    awanderin <awanderin@gmail.com> wrote:
    D Finnigan <dog_cow@macgui.com> writes:

    Has anyone ever thought about how Woz learned 6502 assembly language for the >> Apple I and Apple II? I have wondered it a few times when I look at Monitor >> source and think about the integer BASIC that he wrote. How long did it take >> him to learn 6502 and become proficient enough to write Monitor, BASIC, and >> other utilities for the Apple? Did Woz know assembly for another CPU?

    6502 was a fairly new CPU, and even though based on the earlier Motorola
    6800, neither one had been out for more than a few years by the time the
    Apple I and II were introduced in '76 and '77.

    He had others around to help him, at least to the extent of answering his
    questions or loaning him technical docs; this is certain.

    Anyone know more about how Woz learned to program the 6502?

    No idea how Woz learned 6502, but I'll guess.

    Woz says that he designed many computers before he actually built the
    Apple I. He talked about how he obsessed over things, like how many
    chips in a design. I suspect he also obsessed over the details in data
    books and manuals for computers. He basically crammed his mind full of
    every detail he could find.

    I would bet he probably studied the opcodes, and constantly thought
    about the result he wanted to achieve. His intense concentration and
    his subconscious probably helped a ton.

    One example is the binary-to-decimal converter he wrote. I cannot find
    it right now, but I recall he used shifts (ASL) with BCD-mode (SED), and
    came up with a pretty clever way to convert a number for printing.
    It seems like he tried to think of every possible way to use the
    different 6502 instructions. Maybe, that's how he came up with this
    stuff?

    The other thing is, he had already built many electronic devices, and understood digital logic circuits really well. When he looked at the
    6502 data book, he probably figured out how it worked inside. It might
    have not been too much more effort for him to put those opcodes to use.


    Assembly language is one-for-one equivalent to machine language for the
    target processor.

    For 8-bit machines it is much lower level than the usual programming
    languages. As a result, it is somewhat confusing to people who are
    accustomed to higher level languages, where “+” can mean “add two multibyte
    floating point numbers”, which requires perhaps a hundred 6502
    instructions.

    Machine language is much lower level and much simpler, performing
    elementary logical and arithmetic operations on single bytes.

    Machines with wider data paths and more advanced data types, like floating point, all have similar basic operations, but with wider and more complex
    data types.

    Once you have mastered *any* machine language you are well prepared to
    learn another.

    Woz was quite familiar with machine level instructions, and it would be straightforward to “port” that familiarity to the 6502, then learn the “tricks” peculiar to the 6502 and its instruction set.

    To move from an understanding of a high level language to machine language, prepare yourself for a drastic drop in semantic level and RTFM over and
    over. When you have grasped the concept that almost any high level
    operation translates into many machine language instructions, it all starts
    to make sense. Then you discover that many logical and arithmetic
    operations can be performed much more efficiently at the machine language level.

    --
    -michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)