Where does the Z80 processor start executing from?How did the Z80 instruction set differ from the 8080?Why does the Z80 have a half-carry bit?How fast is memcpy on the Z80?z80 crashes after executing some instructionsWhy does the Z80 include the RLD and RRD instructions?Why is the Z80's supply pin in the middle of the data pins?Why did TI-8x calculator series use the Z80 processor?Role of the Z80 co-processor in GBA gamesHow do I Interface a PS/2 Keyboard without Modern Techniques?What does ld a,(hl) do in this piece of Z80 ASM code, and why is HL incremented?

Valid Badminton Score?

Is the destination of a commercial flight important for the pilot?

Proof of work - lottery approach

How can I kill an app using Terminal?

Why are there no referendums in the US?

Lay out the Carpet

Is there any reason not to eat food that's been dropped on the surface of the moon?

Closest Prime Number

What Brexit proposals are on the table in the indicative votes on the 27th of March 2019?

CREATE opcode: what does it really do?

Opposite of a diet

What is paid subscription needed for in Mortal Kombat 11?

How do I go from 300 unfinished/half written blog posts, to published posts?

How do we know the LHC results are robust?

Class Action - which options I have?

How did Arya survive the stabbing?

What are the ramifications of creating a homebrew world without an Astral Plane?

I'm in charge of equipment buying but no one's ever happy with what I choose. How to fix this?

How do I rename a Linux host without needing to reboot for the rename to take effect?

Avoiding estate tax by giving multiple gifts

How does the UK government determine the size of a mandate?

Pole-zeros of a real-valued causal FIR system

Why escape if the_content isnt?

How can I get through very long and very dry, but also very useful technical documents when learning a new tool?



Where does the Z80 processor start executing from?


How did the Z80 instruction set differ from the 8080?Why does the Z80 have a half-carry bit?How fast is memcpy on the Z80?z80 crashes after executing some instructionsWhy does the Z80 include the RLD and RRD instructions?Why is the Z80's supply pin in the middle of the data pins?Why did TI-8x calculator series use the Z80 processor?Role of the Z80 co-processor in GBA gamesHow do I Interface a PS/2 Keyboard without Modern Techniques?What does ld a,(hl) do in this piece of Z80 ASM code, and why is HL incremented?













4















Strangely I can't find this information anywhere online -- I've thoroughly looked at the datasheet, and I've searched things like "Z80 program counter initial value" -- but I can't find anything!



My question is simply: when the Z80 just turns on, what value does the program counter take? (i.e., what instruction does it start executing from?)



Logically, I'd assume it initialises to 0, but I want to be sure of this.










share|improve this question







New contributor




Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    4















    Strangely I can't find this information anywhere online -- I've thoroughly looked at the datasheet, and I've searched things like "Z80 program counter initial value" -- but I can't find anything!



    My question is simply: when the Z80 just turns on, what value does the program counter take? (i.e., what instruction does it start executing from?)



    Logically, I'd assume it initialises to 0, but I want to be sure of this.










    share|improve this question







    New contributor




    Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      4












      4








      4








      Strangely I can't find this information anywhere online -- I've thoroughly looked at the datasheet, and I've searched things like "Z80 program counter initial value" -- but I can't find anything!



      My question is simply: when the Z80 just turns on, what value does the program counter take? (i.e., what instruction does it start executing from?)



      Logically, I'd assume it initialises to 0, but I want to be sure of this.










      share|improve this question







      New contributor




      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.












      Strangely I can't find this information anywhere online -- I've thoroughly looked at the datasheet, and I've searched things like "Z80 program counter initial value" -- but I can't find anything!



      My question is simply: when the Z80 just turns on, what value does the program counter take? (i.e., what instruction does it start executing from?)



      Logically, I'd assume it initialises to 0, but I want to be sure of this.







      z80






      share|improve this question







      New contributor




      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 3 hours ago









      Jacob GarbyJacob Garby

      1233




      1233




      New contributor




      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Jacob Garby is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















          1 Answer
          1






          active

          oldest

          votes


















          6














          Yes, it's zero - like the 8080 it descends from.



          Excerpt from Zilog's March 1978 Product Specification (datasheet), page 2, Pin Description, here the /RESET signal (emphasis mine):




          Input, active low. RESET initializes the CPU as follows:
          reset interrupt enable flip-flop, clear PC and registers
          I and R and set interrupt to 8080A mode.




          Similar the description in the 1977 Z80 Technical Manual (03-0029-01) on page 9.






          share|improve this answer

























          • Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

            – Jacob Garby
            3 hours ago











          • (I'll accept the answer as soon as I can)

            – Jacob Garby
            3 hours ago











          • Does anything not start at zero?

            – dashnick
            1 hour ago






          • 3





            @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

            – Raffzahn
            44 mins ago






          • 2





            Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

            – Raffzahn
            22 mins ago










          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "648"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          noCode: true, onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );






          Jacob Garby is a new contributor. Be nice, and check out our Code of Conduct.









          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f9448%2fwhere-does-the-z80-processor-start-executing-from%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          6














          Yes, it's zero - like the 8080 it descends from.



          Excerpt from Zilog's March 1978 Product Specification (datasheet), page 2, Pin Description, here the /RESET signal (emphasis mine):




          Input, active low. RESET initializes the CPU as follows:
          reset interrupt enable flip-flop, clear PC and registers
          I and R and set interrupt to 8080A mode.




          Similar the description in the 1977 Z80 Technical Manual (03-0029-01) on page 9.






          share|improve this answer

























          • Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

            – Jacob Garby
            3 hours ago











          • (I'll accept the answer as soon as I can)

            – Jacob Garby
            3 hours ago











          • Does anything not start at zero?

            – dashnick
            1 hour ago






          • 3





            @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

            – Raffzahn
            44 mins ago






          • 2





            Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

            – Raffzahn
            22 mins ago















          6














          Yes, it's zero - like the 8080 it descends from.



          Excerpt from Zilog's March 1978 Product Specification (datasheet), page 2, Pin Description, here the /RESET signal (emphasis mine):




          Input, active low. RESET initializes the CPU as follows:
          reset interrupt enable flip-flop, clear PC and registers
          I and R and set interrupt to 8080A mode.




          Similar the description in the 1977 Z80 Technical Manual (03-0029-01) on page 9.






          share|improve this answer

























          • Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

            – Jacob Garby
            3 hours ago











          • (I'll accept the answer as soon as I can)

            – Jacob Garby
            3 hours ago











          • Does anything not start at zero?

            – dashnick
            1 hour ago






          • 3





            @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

            – Raffzahn
            44 mins ago






          • 2





            Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

            – Raffzahn
            22 mins ago













          6












          6








          6







          Yes, it's zero - like the 8080 it descends from.



          Excerpt from Zilog's March 1978 Product Specification (datasheet), page 2, Pin Description, here the /RESET signal (emphasis mine):




          Input, active low. RESET initializes the CPU as follows:
          reset interrupt enable flip-flop, clear PC and registers
          I and R and set interrupt to 8080A mode.




          Similar the description in the 1977 Z80 Technical Manual (03-0029-01) on page 9.






          share|improve this answer















          Yes, it's zero - like the 8080 it descends from.



          Excerpt from Zilog's March 1978 Product Specification (datasheet), page 2, Pin Description, here the /RESET signal (emphasis mine):




          Input, active low. RESET initializes the CPU as follows:
          reset interrupt enable flip-flop, clear PC and registers
          I and R and set interrupt to 8080A mode.




          Similar the description in the 1977 Z80 Technical Manual (03-0029-01) on page 9.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 2 hours ago









          George Phillips

          3,5211522




          3,5211522










          answered 3 hours ago









          RaffzahnRaffzahn

          54k6132218




          54k6132218












          • Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

            – Jacob Garby
            3 hours ago











          • (I'll accept the answer as soon as I can)

            – Jacob Garby
            3 hours ago











          • Does anything not start at zero?

            – dashnick
            1 hour ago






          • 3





            @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

            – Raffzahn
            44 mins ago






          • 2





            Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

            – Raffzahn
            22 mins ago

















          • Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

            – Jacob Garby
            3 hours ago











          • (I'll accept the answer as soon as I can)

            – Jacob Garby
            3 hours ago











          • Does anything not start at zero?

            – dashnick
            1 hour ago






          • 3





            @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

            – Raffzahn
            44 mins ago






          • 2





            Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

            – Raffzahn
            22 mins ago
















          Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

          – Jacob Garby
          3 hours ago





          Thanks! I actually didn't know that the 8080 started at zero either, but it makes complete sense.

          – Jacob Garby
          3 hours ago













          (I'll accept the answer as soon as I can)

          – Jacob Garby
          3 hours ago





          (I'll accept the answer as soon as I can)

          – Jacob Garby
          3 hours ago













          Does anything not start at zero?

          – dashnick
          1 hour ago





          Does anything not start at zero?

          – dashnick
          1 hour ago




          3




          3





          @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

          – Raffzahn
          44 mins ago





          @dashnick Many don't just start, but take a vector form a predefined location like 6500 and 6800 start at the vector residing at FFFE/FF, 68k takes the initial PC from Vector 1 (address 4..7). Other do start form some address where the IOC locates a loader record, and so on. Starting from Zero is only one of many ways.

          – Raffzahn
          44 mins ago




          2




          2





          Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

          – Raffzahn
          22 mins ago





          Intels 8086 employs an interesting combination by starting a offset zero, like 8080/Z80, but in segment FFFF, thus at absolute address FFFF0.

          – Raffzahn
          22 mins ago










          Jacob Garby is a new contributor. Be nice, and check out our Code of Conduct.









          draft saved

          draft discarded


















          Jacob Garby is a new contributor. Be nice, and check out our Code of Conduct.












          Jacob Garby is a new contributor. Be nice, and check out our Code of Conduct.











          Jacob Garby is a new contributor. Be nice, and check out our Code of Conduct.














          Thanks for contributing an answer to Retrocomputing Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f9448%2fwhere-does-the-z80-processor-start-executing-from%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Are there any AGPL-style licences that require source code modifications to be public? Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Force derivative works to be publicAre there any GPL like licenses for Apple App Store?Do you violate the GPL if you provide source code that cannot be compiled?GPL - is it distribution to use libraries in an appliance loaned to customers?Distributing App for free which uses GPL'ed codeModifications of server software under GPL, with web/CLI interfaceDoes using an AGPLv3-licensed library prevent me from dual-licensing my own source code?Can I publish only select code under GPLv3 from a private project?Is there published precedent regarding the scope of covered work that uses AGPL software?If MIT licensed code links to GPL licensed code what should be the license of the resulting binary program?If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?

          2013 GY136 Descoberta | Órbita | Referências Menu de navegação«List Of Centaurs and Scattered-Disk Objects»«List of Known Trans-Neptunian Objects»

          Button changing it's text & action. Good or terrible? The 2019 Stack Overflow Developer Survey Results Are Inchanging text on user mouseoverShould certain functions be “hard to find” for powerusers to discover?Custom liking function - do I need user login?Using different checkbox style for different checkbox behaviorBest Practices: Save and Exit in Software UIInteraction with remote validated formMore efficient UI to progress the user through a complicated process?Designing a popup notice for a gameShould bulk-editing functions be hidden until a table row is selected, or is there a better solution?Is it bad practice to disable (replace) the context menu?