Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.apple2.programmer > #1215
| From | "Bill Buckels" <bbuckels@mts.net> |
|---|---|
| Newsgroups | comp.sys.apple2.programmer |
| Subject | Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) |
| Date | 2014-05-23 21:45 -0500 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <llp13i$nt1$1@speranza.aioe.org> (permalink) |
| References | <llmfkk$mpi$1@speranza.aioe.org> <llmh9v$po4$1@speranza.aioe.org> <llnck1$kq9$1@dont-email.me> |
"David Schmidt" <schmidtd@my-deja.com> wrote: >I don't do graphics, so I have no idea why screen holes are important to >DHGR and when/how they need to be poked. Some terminology: A "Screen Hole" is a memory hole in a C65 program is an area of memory that the code jumps past to avoid the screen memory. It is not BSS memory. It is part of the program, and its is initialized data and makes the program larger. You don't poke screen holes. You place bitmapped graphics in them for display. If your program code covers the screen and you overwrite it with a graphic image then you will crash into the monitor. That is why screen holes are important to DHGR. In a prodos sys program that loads at 0x2000 and uses page 2 to do HGR and DHGR graphics, a screen hole of 8192 bytes is placed in the program at 0x4000. An HGR image of a title screen often embedded in such a program can be displayed on startup without loading from disk. Memory holes in a C65 program can be placed anywhere and of any size. >But I know a little about linker configs and how you tell cc65 where you >intend to put stuff. Thank goodness... so in English now: I want to build a program in cc65 that runs code both above and below screen memory on the apple II, but this does not seem possible without modifying the linker. I don't know enough about the linker anyway to muck with it. So I need to link 8192 bytes in some segment explicitly to screen memory at address 0x4000 in main memory. Of course I would also like to organize the program so the code runs at 0x6000 and above if possible as well as below 0x4000 but avoids the screen memory. So I assume that the best use of memory is to use loader.system: 1. Root Module including main() loads at 0x803 2.screen segment at 0x4000 3. 0x6000 Root module continues... or Overlays are loaded In auxmem: 4. Screen segment at 0x4000 >Can you explain in simple (and hopefully brief) terms what you need to >accomplish - and what you expect the linker to do to enable you to do it? Does this give you enough information? Bill
Back to comp.sys.apple2.programmer | Previous | Next — Next in thread | Find similar | Unroll thread
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-23 21:45 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) Michael J. Mahon <mjmahon@aol.com> - 2014-05-23 22:20 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-23 23:03 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) David Schmidt <schmidtd@my-deja.com> - 2014-05-24 00:18 -0400
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-24 08:49 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-24 10:58 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) Michael J. Mahon <mjmahon@aol.com> - 2014-05-24 11:04 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-24 14:28 -0500
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) ol.sc@web.de (Oliver Schmidt) - 2014-05-30 21:20 +0000
Re: Linker Configs and Screen Holes (Was: Re: Double Hi-Res Demo in cc65 available for Download) "Bill Buckels" <bbuckels@mts.net> - 2014-05-30 18:35 -0500
csiph-web