Image Map Image Map
Page 3 of 3 FirstFirst 123
Results 21 to 26 of 26

Thread: Receive input without echoing?

  1. #21

    Default

    Quote Originally Posted by Chuck(G) View Post
    No, I was talking about the "ex af,af'" and "exx" instructions, that switch to AF' BC' DE' and HL' secondary registers. Very fast, with no memory references (as opposed to push and pop).
    Unfortunately, the reality - at least in that era - was that you could not depend on application code avoiding use of the alternate register set. This essentially rendered them unusable in the OS - and especially in interrupt routines.

  2. #22
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,229
    Blog Entries
    20

    Default

    No worse than the OP's idea of using IX and IY, no?

    The second set of registers was intended for use in servicing interrupts. Some of the NEC V-series 16-bit chips even implement more than one alternate set for this purpose.

    If you run code destined for 8080 CPUs, you'll always be safe.

  3. #23

    Default

    Quote Originally Posted by Chuck(G) View Post
    No worse than the OP's idea of using IX and IY, no?

    The second set of registers was intended for use in servicing interrupts. Some of the NEC V-series 16-bit chips even implement more than one alternate set for this purpose.

    If you run code destined for 8080 CPUs, you'll always be safe.
    Using the Z80 alternate register set is fine in embedded applications, but for a general-purpose OS you are likely to break some existing application code. Same is true for using any register without saving it, including IX and IY. Doing so will limit what you can run under your OS.

  4. #24
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,229
    Blog Entries
    20

    Default

    I'm not sure that I follow. CP/M for certain doesn't make use of the alternate registers; I'm assuming that the OP knows what's in his BIOS. Most general-purpose applications are written for 8080 platforms (e.g. Wordstar, Multiplan, etc.) so they don't use the alternate set either. Given that the OP seems to want to use the serial port for data up/downloading, his code will be the only thing running. The OP could even put his alternate-register-specific code in his own application as an application-unique driver (e.g. like some of the BBS programs).

    What am I missing?

  5. #25

    Default

    I was referring to any code in the BIOS. If Jonathon is going to write a stand-alone app to receive characters, he'll have to disable the current BIOS character I/O. Given what I know about his BIOS, there are no hooks to do that. But if he's going to go to those lengths, he probably doesn't want to use interrupts at all, and just poll the serial port in-line. Not sure the alternate register sets really helps in that case. It might, I suppose. It depends on how he envisions the code, compared to either of us. I'm still not convinced it's worthwhile, at least I would not bother since what he has now is working. If he's actually working to create a "viable" product, he may want to stick with standard interfaces. He's got some pretty slick designs going on. If I were using real hardware anymore, I'd buy one.

  6. #26
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,229
    Blog Entries
    20

    Default

    Well, I've been out of the 8 bit x80 world for quite a time. Nowadays, I'd probably just use an MCU/Pi-type MPU and emulate whatever needed it. But I'm not a collector--just interested in getting the job done.

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •