Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. Some people claim thar the 6502 is a RISC processor.

Some people claim thar the 6502 is a RISC processor.

Scheduled Pinned Locked Moved Uncategorized
mos6502
52 Posts 15 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • phloggen@expressional.socialP phloggen@expressional.social

    @brouhaha

    The DG Nova was the first RISC, and anybody who wants to argue otherwise must bring an architecture with less than 18 instructions to the debate.

    brouhaha@mastodon.socialB This user is from outside of this forum
    brouhaha@mastodon.socialB This user is from outside of this forum
    brouhaha@mastodon.social
    wrote last edited by
    #13

    @phloggen
    SSEM, 7 instructions, 1948

    1 Reply Last reply
    0
    • brouhaha@mastodon.socialB brouhaha@mastodon.social

      @phloggen
      Only one instruction, OPR, does multiple selectable things, and it does them in parallel as much as possible, so it's often considered to be a single zero-operand instruction.

      phloggen@expressional.socialP This user is from outside of this forum
      phloggen@expressional.socialP This user is from outside of this forum
      phloggen@expressional.social
      wrote last edited by
      #14

      @brouhaha

      I dont buy it πŸ™‚

      The PDP-8 has far too many "you just have to know this" footnotes.

      Compare that to the Nova which is almost entirely orthogonal, for instance all ALU instructions taking the same options. and having the same skips.

      1 Reply Last reply
      0
      • phloggen@expressional.socialP phloggen@expressional.social

        @brouhaha

        The DG Nova was the first RISC, and anybody who wants to argue otherwise must bring an architecture with less than 18 instructions to the debate.

        etchedpixels@mastodon.socialE This user is from outside of this forum
        etchedpixels@mastodon.socialE This user is from outside of this forum
        etchedpixels@mastodon.social
        wrote last edited by
        #15

        @phloggen @brouhaha the Nova is beautiful but it's a stretch pdp8 so if it counts the 8 surely does. It was also not built to reduce propagation delays to up cycle rate but to hit a budget

        You can see its influences in early ARM though.

        1 Reply Last reply
        0
        • kbm0@mastodon.socialK kbm0@mastodon.social

          @brouhaha @phloggen I read somewhere that when designing the ARM, one of the things that had impressed Acorn about the 6502 was the low interrupt latency, which had given the BBC micro features like background print buffering. They gave the ARM the FIQ mode with 7 private registers, although AFAICT this seems to rarely get used on modern devices.
          @simonzerafa

          etchedpixels@mastodon.socialE This user is from outside of this forum
          etchedpixels@mastodon.socialE This user is from outside of this forum
          etchedpixels@mastodon.social
          wrote last edited by
          #16

          @kbm0 @brouhaha @phloggen @simonzerafa FIQ type functionality was not new by then. 6809 has it for example. A lot of ARM is borrowed. Its how they mixed the ingredients.

          simonzerafa@infosec.exchangeS 1 Reply Last reply
          0
          • etchedpixels@mastodon.socialE etchedpixels@mastodon.social

            @kbm0 @brouhaha @phloggen @simonzerafa FIQ type functionality was not new by then. 6809 has it for example. A lot of ARM is borrowed. Its how they mixed the ingredients.

            simonzerafa@infosec.exchangeS This user is from outside of this forum
            simonzerafa@infosec.exchangeS This user is from outside of this forum
            simonzerafa@infosec.exchange
            wrote last edited by
            #17

            @etchedpixels @kbm0 @brouhaha @phloggen

            The 6809 is somewhat a better CPU than the 6502 in many ways and yet it's still impressive what the less capable 6502 can do.

            revk@toot.me.ukR 1 Reply Last reply
            0
            • simonzerafa@infosec.exchangeS simonzerafa@infosec.exchange

              @etchedpixels @kbm0 @brouhaha @phloggen

              The 6809 is somewhat a better CPU than the 6502 in many ways and yet it's still impressive what the less capable 6502 can do.

              revk@toot.me.ukR This user is from outside of this forum
              revk@toot.me.ukR This user is from outside of this forum
              revk@toot.me.uk
              wrote last edited by
              #18

              @simonzerafa @etchedpixels @kbm0 @brouhaha @phloggen I learned Z80 first but prefer 6502. On one occasion I had to code the same thing for both, which was, interesting.

              simonzerafa@infosec.exchangeS etchedpixels@mastodon.socialE 2 Replies Last reply
              0
              • revk@toot.me.ukR revk@toot.me.uk

                @simonzerafa @etchedpixels @kbm0 @brouhaha @phloggen I learned Z80 first but prefer 6502. On one occasion I had to code the same thing for both, which was, interesting.

                simonzerafa@infosec.exchangeS This user is from outside of this forum
                simonzerafa@infosec.exchangeS This user is from outside of this forum
                simonzerafa@infosec.exchange
                wrote last edited by
                #19

                @revk @etchedpixels @kbm0 @brouhaha @phloggen

                I've since learned that the Z80 was a very capable CPU but somewhat hamstring by the platforms that used it πŸ˜‰

                No such issues with 6502 based CPU platforms 😁

                simonzerafa@infosec.exchangeS revk@toot.me.ukR 2 Replies Last reply
                0
                • simonzerafa@infosec.exchangeS simonzerafa@infosec.exchange

                  @revk @etchedpixels @kbm0 @brouhaha @phloggen

                  I've since learned that the Z80 was a very capable CPU but somewhat hamstring by the platforms that used it πŸ˜‰

                  No such issues with 6502 based CPU platforms 😁

                  simonzerafa@infosec.exchangeS This user is from outside of this forum
                  simonzerafa@infosec.exchangeS This user is from outside of this forum
                  simonzerafa@infosec.exchange
                  wrote last edited by
                  #20

                  @revk @etchedpixels @kbm0 @brouhaha @phloggen

                  It's been possible through, dark arts and necromancy, to add a protected mode to the Z80, which would have been very cool in 1989 πŸ˜„

                  Link Preview Image
                  GitHub - Andy18650/HEC-Model-Z1: A Z80 computer with protected mode support

                  A Z80 computer with protected mode support. Contribute to Andy18650/HEC-Model-Z1 development by creating an account on GitHub.

                  favicon

                  GitHub (github.com)

                  etchedpixels@mastodon.socialE brouhaha@mastodon.socialB 2 Replies Last reply
                  0
                  • simonzerafa@infosec.exchangeS simonzerafa@infosec.exchange

                    @revk @etchedpixels @kbm0 @brouhaha @phloggen

                    It's been possible through, dark arts and necromancy, to add a protected mode to the Z80, which would have been very cool in 1989 πŸ˜„

                    Link Preview Image
                    GitHub - Andy18650/HEC-Model-Z1: A Z80 computer with protected mode support

                    A Z80 computer with protected mode support. Contribute to Andy18650/HEC-Model-Z1 development by creating an account on GitHub.

                    favicon

                    GitHub (github.com)

                    etchedpixels@mastodon.socialE This user is from outside of this forum
                    etchedpixels@mastodon.socialE This user is from outside of this forum
                    etchedpixels@mastodon.social
                    wrote last edited by
                    #21

                    @simonzerafa @revk @kbm0 @brouhaha @phloggen it was done in the 1980s by Morrow

                    1 Reply Last reply
                    0
                    • simonzerafa@infosec.exchangeS simonzerafa@infosec.exchange

                      @revk @etchedpixels @kbm0 @brouhaha @phloggen

                      I've since learned that the Z80 was a very capable CPU but somewhat hamstring by the platforms that used it πŸ˜‰

                      No such issues with 6502 based CPU platforms 😁

                      revk@toot.me.ukR This user is from outside of this forum
                      revk@toot.me.ukR This user is from outside of this forum
                      revk@toot.me.uk
                      wrote last edited by
                      #22

                      @simonzerafa @etchedpixels @kbm0 @brouhaha @phloggen 6502 BRK was uses creatively by BBC Micro as I recall.

                      etchedpixels@mastodon.socialE dpiponi@mathstodon.xyzD 2 Replies Last reply
                      0
                      • revk@toot.me.ukR revk@toot.me.uk

                        @simonzerafa @etchedpixels @kbm0 @brouhaha @phloggen 6502 BRK was uses creatively by BBC Micro as I recall.

                        etchedpixels@mastodon.socialE This user is from outside of this forum
                        etchedpixels@mastodon.socialE This user is from outside of this forum
                        etchedpixels@mastodon.social
                        wrote last edited by
                        #23

                        @revk @simonzerafa @kbm0 @brouhaha @phloggen BBC uses JSR vectors in top of memory BRK on classic 6502 is buggy and cannot be combined reliably with interrupts so it's not really used for anything serious

                        revk@toot.me.ukR 1 Reply Last reply
                        0
                        • etchedpixels@mastodon.socialE etchedpixels@mastodon.social

                          @revk @simonzerafa @kbm0 @brouhaha @phloggen BBC uses JSR vectors in top of memory BRK on classic 6502 is buggy and cannot be combined reliably with interrupts so it's not really used for anything serious

                          revk@toot.me.ukR This user is from outside of this forum
                          revk@toot.me.ukR This user is from outside of this forum
                          revk@toot.me.uk
                          wrote last edited by
                          #24

                          @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen Yeh I may be misremembering, to be honest, long time ago.

                          etchedpixels@mastodon.socialE tautology@infosec.exchangeT 2 Replies Last reply
                          0
                          • R relay@relay.infosec.exchange shared this topic
                          • revk@toot.me.ukR revk@toot.me.uk

                            @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen Yeh I may be misremembering, to be honest, long time ago.

                            etchedpixels@mastodon.socialE This user is from outside of this forum
                            etchedpixels@mastodon.socialE This user is from outside of this forum
                            etchedpixels@mastodon.social
                            wrote last edited by
                            #25

                            @revk @simonzerafa @kbm0 @brouhaha @phloggen some 680x machines use SWI this way (equivalent of BRK) but BRK is really limited to dropping into the debugger until 65C02 annoyingly as I did want to use BRK for Fuzix syscalls on 6502

                            1 Reply Last reply
                            0
                            • revk@toot.me.ukR revk@toot.me.uk

                              @simonzerafa @etchedpixels @kbm0 @brouhaha @phloggen I learned Z80 first but prefer 6502. On one occasion I had to code the same thing for both, which was, interesting.

                              etchedpixels@mastodon.socialE This user is from outside of this forum
                              etchedpixels@mastodon.socialE This user is from outside of this forum
                              etchedpixels@mastodon.social
                              wrote last edited by
                              #26

                              @revk @simonzerafa @kbm0 @brouhaha @phloggen carry flag always gets me on 6502 when switching the CPU I am working with 6800 series, 8080 series and most others it's the other way around on subtract

                              brouhaha@mastodon.socialB 1 Reply Last reply
                              0
                              • revk@toot.me.ukR revk@toot.me.uk

                                @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen Yeh I may be misremembering, to be honest, long time ago.

                                tautology@infosec.exchangeT This user is from outside of this forum
                                tautology@infosec.exchangeT This user is from outside of this forum
                                tautology@infosec.exchange
                                wrote last edited by
                                #27

                                @revk @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen By default on the Acorn 8-bit OS, the IRQ/BRK vector (0xfffe) redirects into ROM, which then splits it depending on the I flag.

                                If it is a BRK, then it will pull the calling address from stack and store the following address in 0x00ED and 0x00FE and then jump to the code pointed to by 0x0202. By default this will print the null terminated ASCII message after the BRK.

                                For example:

                                Link Preview Image
                                tautology@infosec.exchangeT kbm0@mastodon.socialK 2 Replies Last reply
                                0
                                • tautology@infosec.exchangeT tautology@infosec.exchange

                                  @revk @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen By default on the Acorn 8-bit OS, the IRQ/BRK vector (0xfffe) redirects into ROM, which then splits it depending on the I flag.

                                  If it is a BRK, then it will pull the calling address from stack and store the following address in 0x00ED and 0x00FE and then jump to the code pointed to by 0x0202. By default this will print the null terminated ASCII message after the BRK.

                                  For example:

                                  Link Preview Image
                                  tautology@infosec.exchangeT This user is from outside of this forum
                                  tautology@infosec.exchangeT This user is from outside of this forum
                                  tautology@infosec.exchange
                                  wrote last edited by
                                  #28

                                  @revk @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen

                                  There is a warning in the Advanced User guide about using this for anything complex:

                                  "Note that although a fully prepared exit from a BRK instruction
                                  is possible, neither the operating system or BASIC expect a
                                  return from this vector. Possibly fatal results may occur if such
                                  a return is made as paged ROM software typically stores the
                                  BRK, error number and message in page one below the stack,
                                  returning there is very hazardous. The exception to this is when
                                  using the BRK instruction as a breakpoint in user supplied
                                  machine code, and is not used as a standard error generating
                                  mechanism."

                                  revk@toot.me.ukR 1 Reply Last reply
                                  0
                                  • tautology@infosec.exchangeT tautology@infosec.exchange

                                    @revk @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen By default on the Acorn 8-bit OS, the IRQ/BRK vector (0xfffe) redirects into ROM, which then splits it depending on the I flag.

                                    If it is a BRK, then it will pull the calling address from stack and store the following address in 0x00ED and 0x00FE and then jump to the code pointed to by 0x0202. By default this will print the null terminated ASCII message after the BRK.

                                    For example:

                                    Link Preview Image
                                    kbm0@mastodon.socialK This user is from outside of this forum
                                    kbm0@mastodon.socialK This user is from outside of this forum
                                    kbm0@mastodon.social
                                    wrote last edited by
                                    #29

                                    @tautology @revk @etchedpixels @simonzerafa @brouhaha @phloggen What causes a "Bad ROM"? Is that what you get if you pull the BASIC ROM out?

                                    tautology@infosec.exchangeT 1 Reply Last reply
                                    0
                                    • phloggen@expressional.socialP phloggen@expressional.social

                                      @brouhaha

                                      The DG Nova was the first RISC, and anybody who wants to argue otherwise must bring an architecture with less than 18 instructions to the debate.

                                      penguin42@mastodon.org.ukP This user is from outside of this forum
                                      penguin42@mastodon.org.ukP This user is from outside of this forum
                                      penguin42@mastodon.org.uk
                                      wrote last edited by
                                      #30

                                      @phloggen @brouhaha Hmm less than 18; Manchester Baby 1948 - 7 instructions; https://en.wikipedia.org/wiki/Manchester_Baby#Programming

                                      brouhaha@mastodon.socialB 1 Reply Last reply
                                      0
                                      • tautology@infosec.exchangeT tautology@infosec.exchange

                                        @revk @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen

                                        There is a warning in the Advanced User guide about using this for anything complex:

                                        "Note that although a fully prepared exit from a BRK instruction
                                        is possible, neither the operating system or BASIC expect a
                                        return from this vector. Possibly fatal results may occur if such
                                        a return is made as paged ROM software typically stores the
                                        BRK, error number and message in page one below the stack,
                                        returning there is very hazardous. The exception to this is when
                                        using the BRK instruction as a breakpoint in user supplied
                                        machine code, and is not used as a standard error generating
                                        mechanism."

                                        revk@toot.me.ukR This user is from outside of this forum
                                        revk@toot.me.ukR This user is from outside of this forum
                                        revk@toot.me.uk
                                        wrote last edited by
                                        #31

                                        @tautology @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen The paged ROMs were fun. I have one application that actually took up two slots with calls between them - all good fun.

                                        kbm0@mastodon.socialK 1 Reply Last reply
                                        0
                                        • revk@toot.me.ukR revk@toot.me.uk

                                          @tautology @etchedpixels @simonzerafa @kbm0 @brouhaha @phloggen The paged ROMs were fun. I have one application that actually took up two slots with calls between them - all good fun.

                                          kbm0@mastodon.socialK This user is from outside of this forum
                                          kbm0@mastodon.socialK This user is from outside of this forum
                                          kbm0@mastodon.social
                                          wrote last edited by
                                          #32

                                          @revk @tautology @etchedpixels @simonzerafa @brouhaha @phloggen You could make a cheap "sideways RAM" board with static RAM mapped into the ROM slots.

                                          kbm0@mastodon.socialK 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups