Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #4404

Re: QuickViewDHGR - A simple Apple II graphics viewer

From "Bill Buckels" <bbuckels@mts.net>
Newsgroups comp.sys.apple2.programmer
Subject Re: QuickViewDHGR - A simple Apple II graphics viewer
Date 2018-03-21 04:23 -0500
Organization Aioe.org NNTP Server
Message-ID <p8t89t$1pa2$1@gioia.aioe.org> (permalink)
References <b1891b88-d1ec-4c9e-94f7-b42aeeab9997@googlegroups.com>

Show all headers | View raw


<markpmlim@yahoo.com.sg> wrote:
>QuickViewDHGR is a simple utility for viewing Apple II Standard HiRes and 
>Double Hires graphics. Its deployment target is Mac OS X 10.5 or later.

The DHR (Double Hi-Res Raster) Image Format

The Sprites (and optional black and white Sprite Masks) produced by Bmp2DHR 
are in my XPACK program's DHR format, but XPACK only produces Full Screen 
DHGR images so this is something new.

The Sprites produced by Bmp2DHR have an extension of DHR. (Sprite masks have 
an extension of DHM.) Like A2FC and AUX, BIN file pairs, they are stored on 
an Apple II Disk as ProDOS FileType $06 with an Auxiliary Type of $2000 or 
$4000 by default. On a DOS 3.3 disk they are stored with header information 
required by DOS 3.3. Use command option "DOS" if you need these DOS 3.3 
headers pre-pended to your DHGR output file(s).

The Header of a DHR (or a DHM) is in two parts;
3 bytes of ID data with the letters 'D', 'H', 'R' (or 'D','H','M') in 
upper-case.
1 byte - width in bytes (multiples of 4 bytes - 7 pixels)
1 byte - height in rasters

The DHR is a raster based image with scan-lines of raw DHGR data alternating 
between auxiliary and main memory. Therefore a BASIC program cannot load 
these any easier than in a C program, since the DHGR screen is interleaved 
the same way that the HGR screen is interleaved and not linear, so a 
considerable amount of supporting code is required. Bank switching between 
auxiliary and main memory banks 0 (main board) and 1 (language card) is also 
no easier in a BASIC program than in a C program.

For a full-screen DHR, there are 192 pairs of linear rasters, each of 40 
bytes of auxiliary memory data followed by 40 bytes of main memory data. 
Splitting the rasters into pairs keeps bank switching to a minimum while 
still allowing for linear reading and display from disk or buffer. Because 
of the way DHGR's interleaf  works, there is no faster way to load a screen 
fragment.

The full screen DHR loads raster by raster and displays as quickly as a 
buffered read can display on the Apple II. At 15365 bytes per screen this 
format provides a modest disk space saving over the 16384 bytes of the A2FC 
or AUX, BIN equivalent.

As mentioned earlier, a caveat for any file in DHR raster format is the 4 
byte / 7 pixel pattern of the DHGR display. The width descriptor in the 
header is given in byte width rather than pixel width. Image fragments in 
DHGR must necessarily be aligned on 4 byte boundaries to display properly. 
Bmp2DHR pads DHR formats as required in an optional background color if 
desired.

By comparison, HGR image fragments (in my RAG format and not currently 
produced by Bmp2DHR) are aligned on 2 byte boundaries for proper display but 
they are still somewhat recognizable if not aligned properly. If DHGR image 
fragments are not aligned on 4 byte boundaries they are a mess.

http://www.appleoldies.ca/bmp2dhr/sprites/
 

Back to comp.sys.apple2.programmer | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-03-18 23:34 -0700
  Re: QuickViewDHGR - A simple Apple II graphics viewer gids.rs@sasktel.net - 2018-03-19 13:59 -0700
    Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-03-19 18:25 -0700
    Re: QuickViewDHGR - A simple Apple II graphics viewer "Bill Buckels" <bbuckels@mts.net> - 2018-03-20 02:12 -0500
      Re: QuickViewDHGR - A simple Apple II graphics viewer "Bill Buckels" <bbuckels@mts.net> - 2018-03-20 02:19 -0500
        Re: QuickViewDHGR - A simple Apple II graphics viewer James Davis <JPD.Enterprises@outlook.com> - 2018-03-20 11:55 -0700
      Re: QuickViewDHGR - A simple Apple II graphics viewer gids.rs@sasktel.net - 2018-03-20 09:59 -0700
        Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-03-20 18:21 -0700
          Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-04-17 00:15 -0700
            Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-05-13 18:10 -0700
              Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-09-24 04:22 -0700
    Re: QuickViewDHGR - A simple Apple II graphics viewer gids.rs@sasktel.net - 2018-03-20 09:04 -0700
      Re: QuickViewDHGR - A simple Apple II graphics viewer gids.rs@sasktel.net - 2018-03-20 20:53 -0700
    Re: QuickViewDHGR - A simple Apple II graphics viewer gids.rs@sasktel.net - 2018-03-20 09:31 -0700
      Re: QuickViewDHGR - A simple Apple II graphics viewer markpmlim@yahoo.com.sg - 2018-03-20 14:35 -0700
  Re: QuickViewDHGR - A simple Apple II graphics viewer "Bill Buckels" <bbuckels@mts.net> - 2018-03-20 01:01 -0500
  Re: QuickViewDHGR - A simple Apple II graphics viewer "Bill Buckels" <bbuckels@mts.net> - 2018-03-21 04:23 -0500

csiph-web