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


Groups > comp.sys.apple2.programmer > #1245 > unrolled thread

SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available

Started by"Bill Buckels" <bbuckels@mts.net>
First post2014-07-21 23:16 -0500
Last post2014-08-03 16:23 -0500
Articles 16 — 6 participants

Back to article view | Back to comp.sys.apple2.programmer


Contents

  SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available "Bill Buckels" <bbuckels@mts.net> - 2014-07-21 23:16 -0500
    Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available olivier.zardini@itn-group.eu - 2014-07-23 04:06 -0700
      Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available "Bill Buckels" <bbuckels@mts.net> - 2014-07-23 07:44 -0500
      Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available Michael J. Mahon <mjmahon@aol.com> - 2014-07-23 07:59 -0500
        Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available "Bill Buckels" <bbuckels@mts.net> - 2014-07-23 15:42 -0500
    Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available olivier.zardini@itn-group.eu - 2014-07-23 09:48 -0700
      Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available Charlie <charlieDOTd@verEYEzon.net> - 2014-07-23 14:32 -0400
        Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available "Bill Buckels" <bbuckels@mts.net> - 2014-07-23 16:25 -0500
      Re: SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available "Bill Buckels" <bbuckels@mts.net> - 2014-07-23 15:41 -0500
    Announcing: SHRFan - MORE Super-Duper Hi-Res  Pixel Graphics in cc65 "Bill Buckels" <bbuckels@mts.net> - 2014-07-30 22:05 -0500
      Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 Jerome Vernet <jeromevernetNOSPAM@hotmail.com> - 2014-08-02 22:25 +0200
        Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 Steve Nickolas <usotsuki@buric.co> - 2014-08-02 20:53 +0000
          Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 Jerome Vernet <jeromevernetNOSPAM@hotmail.com> - 2014-08-03 17:36 +0200
        Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 "Bill Buckels" <bbuckels@mts.net> - 2014-08-02 19:24 -0500
          Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 Jerome Vernet <jeromevernetNOSPAM@hotmail.com> - 2014-08-03 17:36 +0200
            Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65 "Bill Buckels" <bbuckels@mts.net> - 2014-08-03 16:23 -0500

#1245 — SHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-21 23:16 -0500
SubjectSHR Pixel Graphics in cc65 - Documentation and Updated Demo Now Available
Message-ID<lqkoje$fq8$1@speranza.aioe.org>
cc65 is a good start.

Read about it here:

http://www.appleoldies.ca/cc65/docs/shr/shrworld.pdf

Download the updated demo here:

http://www.appleoldies.ca/cc65/programs/shr/shrworld.zip

Complete with source code and disk image. You will need to run this on an 
Apple IIgs or on a VOC or on a CB with Charlie's SHR mods, or on a IIgs 
emulator.

The program documentation for this demo provides links to graphics routines 
for ALL cc65's missing Apple II graphics modes.

Bill

[toc] | [next] | [standalone]


#1246

Fromolivier.zardini@itn-group.eu
Date2014-07-23 04:06 -0700
Message-ID<bbae0aae-fad5-4753-90c4-4ab64fb5ee75@googlegroups.com>
In reply to#1245
> http://www.appleoldies.ca/cc65/docs/shr/shrworld.pdf

Fews typos here :

  > On the Apple IIgs there are 16 - 64K banks of memory,

      256 banks

  > The lower 128K of the IIgs (Bank $00 and Bank $01) is "slow RAM" for
  > backward compatibility with the Apple IIe. The rest of the IIgs memory
  > is "fast RAM" including the SHR memory

     The slow ram is Bank $E1. $00 and $01 go at full speed (except few areas like the $Cxxx). The SHR memory, located at $E1/2000 is slow. The shadowed area in $01/2000 is fast.

  > char *fox ="The Quick Brown Fox jumped over the Lazy Dog!";

    Where is the 'S' ?

    We could turn as "The Quick Brown Fox jumped over the Lazy Dogs!"

        Olivier

[toc] | [prev] | [next] | [standalone]


#1247

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-23 07:44 -0500
Message-ID<lqoaob$sv4$1@speranza.aioe.org>
In reply to#1246
<olivier.zardini@itn-group.eu> wrote:
>Fews typos here :

Thank you for taking time to review this Olivier. My heart doesn't want any 
mis-information or typos. Corrections to be made later today.

Bill

[toc] | [prev] | [next] | [standalone]


#1248

FromMichael J. Mahon <mjmahon@aol.com>
Date2014-07-23 07:59 -0500
Message-ID<365837145427813120.762315mjmahon-aol.com@news.giganews.com>
In reply to#1246
<olivier.zardini@itn-group.eu> wrote:
>> http://www.appleoldies.ca/cc65/docs/shr/shrworld.pdf
> 
> Fews typos here :
> 
>   > On the Apple IIgs there are 16 - 64K banks of memory,
> 
>       256 banks
> 
>   > The lower 128K of the IIgs (Bank $00 and Bank $01) is "slow RAM" for
>   > backward compatibility with the Apple IIe. The rest of the IIgs memory
>   > is "fast RAM" including the SHR memory
> 
>      The slow ram is Bank $E1. $00 and $01 go at full speed (except few
> areas like the $Cxxx). The SHR memory, located at $E1/2000 is slow. The
> shadowed area in $01/2000 is fast.
> 
>   > char *fox ="The Quick Brown Fox jumped over the Lazy Dog!";
> 
>     Where is the 'S' ?
> 
>     We could turn as "The Quick Brown Fox jumped over the Lazy Dogs!"
> 
>         Olivier

Should be "jumps". ;-)
-- 
-michael - NadaNet 3.1 and AppleCrate II: http://home.comcast.net/~mjmahon

[toc] | [prev] | [next] | [standalone]


#1252

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-23 15:42 -0500
Message-ID<lqp6oj$73v$1@speranza.aioe.org>
In reply to#1248
"Michael J. Mahon" <mjmahon@aol.com> wrote:
>Should be "jumps". ;-)

It will be. I was brain-dead.

Bill

[toc] | [prev] | [next] | [standalone]


#1249

Fromolivier.zardini@itn-group.eu
Date2014-07-23 09:48 -0700
Message-ID<55c34973-30ce-451e-b57f-fbce7ce4210f@googlegroups.com>
In reply to#1245
   I have a weird question.

   If we are addressing the SHR graphic page, we might consider the code is running on an Apple IIgs computer. So why use the old AUXMOVE stuff and not 65c816 instructions directly ? You could encode a 65816 sequence as binary in your C code and call it from bank $00 where your program is located.

   Basically, you could make some STAL  $01/2000 or STAL  $E1/2000 from your bank $00.

You could also encode a basic PutPixel in 65c816 from bank $00 that will do a :

      CLC             ; 16 bit
      XCE
      REP  #$30

      LDA   $Pixel_Y   ; Pixel_Y = 16 bit
      ASL      
      TAY
      LDA   $Pixel_X   ; Pixel_X = 16 bit
      LSR
      CLC
      ADC   SHRTABLE,Y ; table for each SHR line address 0000 00A0 0140 ...
      TAX
      SEP   #$20       ; A = 8 bit
      LDAL  $012000,X
      AND   #$F0
      ORA   color
      STAL  $012000,X

      SEC              ; 8 bit
      XCE
      SEP #$30

      RTS

   Of course you have to deal with Even / Odd column but only the AND is impacted (AND   #$F0 / AND   #$0F). Test the carry after the LSR to jump to the right part of the code.

      Olivier

[toc] | [prev] | [next] | [standalone]


#1250

FromCharlie <charlieDOTd@verEYEzon.net>
Date2014-07-23 14:32 -0400
Message-ID<lqov1j$9ij$1@dont-email.me>
In reply to#1249
On 7/23/2014 12:48 PM, olivier.zardini@itn-group.eu wrote:
>
>     I have a weird question.
>
>     If we are addressing the SHR graphic page, we might consider the code is running on an Apple IIgs computer. So why use the old AUXMOVE stuff and not 65c816 instructions directly ? You could encode a 65816 sequence as binary in your C code and call it from bank $00 where your program is located.
>
>     Basically, you could make some STAL  $01/2000 or STAL  $E1/2000 from your bank $00.
>
> You could also encode a basic PutPixel in 65c816 from bank $00 that will do a :
>
>        CLC             ; 16 bit
>        XCE
>        REP  #$30
>
>        LDA   $Pixel_Y   ; Pixel_Y = 16 bit
>        ASL
>        TAY
>        LDA   $Pixel_X   ; Pixel_X = 16 bit
>        LSR
>        CLC
>        ADC   SHRTABLE,Y ; table for each SHR line address 0000 00A0 0140 ...
>        TAX
>        SEP   #$20       ; A = 8 bit
>        LDAL  $012000,X
>        AND   #$F0
>        ORA   color
>        STAL  $012000,X
>
>        SEC              ; 8 bit
>        XCE
>        SEP #$30
>
>        RTS
>
>     Of course you have to deal with Even / Odd column but only the AND is impacted (AND   #$F0 / AND   #$0F). Test the carry after the LSR to jump to the right part of the code.
>
>        Olivier

Bill's programs work with an Apple //e if it has a Carte Blanche card 
with the appropriate bitstream installed or a //e with a VOC (Video 
Overlay Card) as well as an Apple IIgs.

Charlie

[toc] | [prev] | [next] | [standalone]


#1253

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-23 16:25 -0500
Message-ID<lqp994$dak$1@speranza.aioe.org>
In reply to#1250
"Charlie" <charlieDOTd@verEYEzon.net> wrote:
 >Bill's programs work with an Apple //e if it has a Carte Blanche card with 
the appropriate bitstream installed or a //e with a VOC (Video Overlay Card) 
as well as an Apple IIgs.

Sorry for repeating what you said in my last post.

IIRC I copied your programs and you debugged them with me to get this 
started. At this point I don't know whose programs they are because I 
changed compilers and I since using Oliver Schmdit's stuff and others:)

We mustn't forget about Jonas's image converters or todhr either. This stuff 
seems to grow on its own.

cc65's companion cross-assembler ca65 does 65816 code as well as 6502 code. 
I'd need to learn how to use it but could likely figure it out. Having 
different routines for the GS shouldn't be a problem though.

Bill 

[toc] | [prev] | [next] | [standalone]


#1251

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-23 15:41 -0500
Message-ID<lqp6lq$6un$1@speranza.aioe.org>
In reply to#1249
<olivier.zardini@itn-group.eu> wrote:

>If we are addressing the SHR graphic page, we might consider the code is 
>running on an Apple IIgs computer.

The code runs on an Apple //e with a VOC and on an Apple //e with a 
Carte-Blanche as well as
on a IIgs.

>So why use the old AUXMOVE stuff and not 65c816 instructions directly ? You 
>could encode a 65816 sequence as binary in your C code and call it from 
>bank $00 where your program is located.

No reason not to. I just haven't done that yet:)

How come you aren't mucking with cc65 Olivier? These cc65 shr programs are 
BIN programs running at $4000... there's lots of room to load 65816 modules 
below $4000. The HGR area is at $2000 is a safe bet... or even below that, 
but there's 8K of memory I'm not even using except to buffer File I/O for 
image loaders and slideshows and stuff.

You could put togther the best toolbox ever and guys could call your 65816 
routines byte code from programs cross-compiled in Linux, Mac OSX, and 
Windows. Antoine had that idea for Aztec C about 7 years ago:)

It could be called the Brutally Deluxe library for cc65 or AppleSoft BASIC.

I am in the process of writing some BMP graphics converters for SHR again, 
this time for Sprites. That's my next little thing.

Bill

 

[toc] | [prev] | [next] | [standalone]


#1255 — Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

From"Bill Buckels" <bbuckels@mts.net>
Date2014-07-30 22:05 -0500
SubjectAnnouncing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrcbpe$ss0$1@speranza.aioe.org>
In reply to#1245
Read about it here:

http://www.appleoldies.ca/cc65/docs/shr/shrfan.pdf

Download it here here:

http://www.appleoldies.ca/cc65/programs/shr/shrfan.zip

Complete with source code and disk image.

Bill 

[toc] | [prev] | [next] | [standalone]


#1257 — Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

FromJerome Vernet <jeromevernetNOSPAM@hotmail.com>
Date2014-08-02 22:25 +0200
SubjectAnnouncing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrjhg6$ok5$1@speranza.aioe.org>
In reply to#1255
Le 31/07/14 05:05, Bill Buckels a écrit :
> Read about it here:
>
> http://www.appleoldies.ca/cc65/docs/shr/shrfan.pdf
>
> Download it here here:
>
> http://www.appleoldies.ca/cc65/programs/shr/shrfan.zip
>
> Complete with source code and disk image.
>
Nice. One thing about these demo: they do not work with Virtual ][ 7.4 
from gerard Putter.
Why ?

JV

[toc] | [prev] | [next] | [standalone]


#1258 — Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

FromSteve Nickolas <usotsuki@buric.co>
Date2014-08-02 20:53 +0000
SubjectRe: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<alpine.DEB.2.02.1408022053110.51480@localhost>
In reply to#1257

[Multipart message — attachments visible in raw view] — view raw

On Sat, 2 Aug 2014, Jerome Vernet wrote:

> Le 31/07/14 05:05, Bill Buckels a écrit :
>> Read about it here:
>> 
>> http://www.appleoldies.ca/cc65/docs/shr/shrfan.pdf
>> 
>> Download it here here:
>> 
>> http://www.appleoldies.ca/cc65/programs/shr/shrfan.zip
>> 
>> Complete with source code and disk image.
>> 
> Nice. One thing about these demo: they do not work with Virtual ][ 7.4 from 
> gerard Putter.
> Why ?
>
> JV
>

It's an Apple IIgs video mode.

-uso.

[toc] | [prev] | [next] | [standalone]


#1261 — Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

FromJerome Vernet <jeromevernetNOSPAM@hotmail.com>
Date2014-08-03 17:36 +0200
SubjectAnnouncing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrlktv$707$2@speranza.aioe.org>
In reply to#1258
Le 02/08/14 22:53, Steve Nickolas a écrit :

>>
>
> It's an Apple IIgs video mode.
Thanks, that's the explanation.

JV

[toc] | [prev] | [next] | [standalone]


#1259 — Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

From"Bill Buckels" <bbuckels@mts.net>
Date2014-08-02 19:24 -0500
SubjectRe: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrjvga$mbi$1@speranza.aioe.org>
In reply to#1257
"Jerome Vernet" <jeromevernetNOSPAM@hotmail.com> wrote:
>Nice. One thing about these demo: they do not work with Virtual ][ 7.4 from 
>gerard Putter.Why ?

You should ask the author of the emulator. Anyone can write code that 
doesn't work.

Anyone can also say something doesn't work without giving details about what 
doesn't work. I assume that the emulator that you are speaking of is in fact 
capable of running SHR programs in ProDOS 8. If not then that is your 
explanation.

The only conclusion I can come to since these SHR programs work a a real 
IIgs, and on an Apple IIe with a VOC, and on an Apple IIe with a Carte 
Blanche and Charlie's SHR Mods, and on Kent Dickey's kegs32 emulator in 
Windows, is that either the emulator you mention does not work, or the 
system that the emulator runs on does not work, or both.

Since doing these demos of mine in both Aztec C65 and cc65, several 
emulators etc. have been found with graphics mode bugs, which indicates that 
they are either poorly written, poorly tested, or both. Perhaps nobody else 
is using them so did not notice. There may be a reason why nobody else uses 
emulators that do not work.

There are other 8-bit programs out there that use SHR written by other 
authors... SHRView for example A logical place for the author of an emulator 
when trying to detect a bug in his software while running 8-bit programs 
that use SHR is to test with several programs.

In any case, if you review the code for my demos, it is very straight 
forward and well documented, and transparent You should be able to find the 
emulator bug and fix it yourself, or just use an emulator that works.

Bill 

[toc] | [prev] | [next] | [standalone]


#1260 — Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

FromJerome Vernet <jeromevernetNOSPAM@hotmail.com>
Date2014-08-03 17:36 +0200
SubjectAnnouncing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrlkst$707$1@speranza.aioe.org>
In reply to#1259
Le 03/08/14 02:24, Bill Buckels a écrit :
> "Jerome Vernet" <jeromevernetNOSPAM@hotmail.com> wrote:
>> Nice. One thing about these demo: they do not work with Virtual ][ 7.4 from
>> gerard Putter.Why ?
>
[SNIP]

Please, don't be so rough.

Just say to me, as I'm an idiot: it ONLY work on a real IIgs, and on an 
Apple IIe with a VOC, and on an Apple IIe with a Carte Blanche and 
Charlie's SHR Mods, and on Kent Dickey's kegs32 emulator in Windows.

I can also add that they work on Sweet 16

Virtual ][ is an Apple IIe emulator (only).

JV

[toc] | [prev] | [next] | [standalone]


#1262 — Re: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65

From"Bill Buckels" <bbuckels@mts.net>
Date2014-08-03 16:23 -0500
SubjectRe: Announcing: SHRFan - MORE Super-Duper Hi-Res Pixel Graphics in cc65
Message-ID<lrm97u$q1a$1@speranza.aioe.org>
In reply to#1260
"Jerome Vernet" <jeromevernetNOSPAM@hotmail.com> wrote:
>Just say to me, as I'm an idiot:

You're not an idiot.

>I can also add that they work on Sweet 16

That's a good sign...

Bill 

[toc] | [prev] | [standalone]


Back to top | Article view | comp.sys.apple2.programmer


csiph-web