Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

The world is coming to an end ... SAVE YOUR BUFFERS!!!


devel / comp.emulators.apple2 / Re: KEGS v1.16 released

SubjectAuthor
* KEGS v1.16 releasedKent Dickey
+- Re: KEGS v1.16 releasedAntoine Vignau
+* Re: KEGS v1.16 releasedI am Rob
|+- Re: KEGS v1.16 releasedBrian Patrie
|`* Re: KEGS v1.16 releasedKent Dickey
| `* Re: KEGS v1.16 releasedI am Rob
|  `* Re: KEGS v1.16 releasedKent Dickey
|   `* Re: KEGS v1.16 releasedI am Rob
|    `* Re: KEGS v1.16 releasedKent Dickey
|     `* Re: KEGS v1.16 releasedI am Rob
|      `* Re: KEGS v1.16 releasedI am Rob
|       +* Re: KEGS v1.16 releasedAntoine Vignau
|       |`* Re: KEGS v1.16 releasedMichael J. Mahon
|       | `- Re: KEGS v1.16 releasedSteve Nickolas
|       `* Re: KEGS v1.16 releasedKent Dickey
|        `* Re: KEGS v1.16 releasedI am Rob
|         `- Re: KEGS v1.16 releasedI am Rob
+- Re: KEGS v1.16 releasedI am Rob
`* Re: KEGS v1.16 releasedBrian Patrie
 `- Re: KEGS v1.16 releasedKent Dickey

1
KEGS v1.16 released

<QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=200&group=comp.emulators.apple2#200

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sun, 23 Jan 2022 20:48:08 -0600
Newsgroups: comp.emulators.apple2
Subject: KEGS v1.16 released
Organization: provalid.com
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
From: keg...@provalid.com (Kent Dickey)
Originator: kegs@provalid.com (Kent Dickey)
Message-ID: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
Date: Sun, 23 Jan 2022 20:48:08 -0600
Lines: 23
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-u7jmRmb+Bq3XKXVUD9boifgjKDkrMsLC1WvXlrDXHZoQEMHhtASCJT9mAXG0xJvYhriO8CUrwHjzRzJ!E7EMOYilPZJiso8+0qxJ85Z7pKivjSmaJG9hDvA6+gSHYGaC3tVBRRmS5CGaqSC+Yxf0j+6E+P/F
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 2027
 by: Kent Dickey - Mon, 24 Jan 2022 02:48 UTC

I've updated KEGS, an Apple IIgs emulator for Mac OS X and Linux, to 1.16.
The Mac executable should run on 10.13 or later. It's also a universal app,
so it runs native on Apple M1 silicon. There's a Linux executable as well.

KEGS v1.16 is available at: http://kegs.sourceforge.net

Changes in KEGS v1.16 since v1.14 (01/23/22)
- Better cursor focus tracking, less likely to have an invisible cursor
when KEGS is no longer the active window.
- F5 now toggles the status display at the bottom on/off. This state can
be saved in config.kegs.
- Added DynaPro image support--mount a host directory as a ProDOS image of
up to 32MB, to allow easy moving of files to/from emulation.
See README.dynapro.txt.
- Add limited Video Overlay Card (VOC) support to add new SHR mode of 640x400
(interlaced).
- You can "D"uplicate any disk image to a new file, and "V"erify any ProDOS
image.

Full source code is included. To rebuild on the Mac, all you need is to
download XCode and KEGS, "cd src; make".

Kent

Re: KEGS v1.16 released

<1a88232b-c442-48b1-89b3-8c29f1363b1bn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=201&group=comp.emulators.apple2#201

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:a05:622a:95:: with SMTP id o21mr9634144qtw.684.1643476176125;
Sat, 29 Jan 2022 09:09:36 -0800 (PST)
X-Received: by 2002:a05:6214:767:: with SMTP id f7mr11445920qvz.32.1643476175798;
Sat, 29 Jan 2022 09:09:35 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sat, 29 Jan 2022 09:09:35 -0800 (PST)
In-Reply-To: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=82.124.251.231; posting-account=c4quJwoAAABUj_DOmUN3HIuXxN1tF7gT
NNTP-Posting-Host: 82.124.251.231
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <1a88232b-c442-48b1-89b3-8c29f1363b1bn@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: ntn.vig...@gmail.com (Antoine Vignau)
Injection-Date: Sat, 29 Jan 2022 17:09:36 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 9
 by: Antoine Vignau - Sat, 29 Jan 2022 17:09 UTC

F5 rulez :-) Thank you for that shortcut.

When I open-apple-6 under Merlin 16+, macOS comes first and grabs the shortcut. I do not know if that is linked to the way key presses are handled to support multi-lingual keyboard, and I hope it is not, because that Merlin key shortcut is just necessary to me. Open-apple-6 is the command to assemble and link source files to generate a S16 program.

Great release, thank you,
Antoine

Re: KEGS v1.16 released

<b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=202&group=comp.emulators.apple2#202

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:ad4:596d:: with SMTP id eq13mr11659629qvb.131.1643481155736;
Sat, 29 Jan 2022 10:32:35 -0800 (PST)
X-Received: by 2002:ae9:de45:: with SMTP id s66mr8834067qkf.115.1643481155588;
Sat, 29 Jan 2022 10:32:35 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sat, 29 Jan 2022 10:32:35 -0800 (PST)
In-Reply-To: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=207.195.86.218; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 207.195.86.218
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Sat, 29 Jan 2022 18:32:35 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 5
 by: I am Rob - Sat, 29 Jan 2022 18:32 UTC

> - Add limited Video Overlay Card (VOC) support to add new SHR mode of 640x400
> (interlaced).

Does this take extensive knowledge of the VOC card to initialize and use that mode, or is it just an emulated area in memory in which on can just flip a softswitch and store data to a specific memory, just like the regular SHR screen?

Would really like to use the 400 rows but don't have the VOC knowledge.

Re: KEGS v1.16 released

<13d421ff-227e-4333-bc97-7d4dcf5bf04fn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=203&group=comp.emulators.apple2#203

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:ac8:7f02:: with SMTP id f2mr10156517qtk.601.1643481749812;
Sat, 29 Jan 2022 10:42:29 -0800 (PST)
X-Received: by 2002:ac8:5a54:: with SMTP id o20mr10109477qta.654.1643481749703;
Sat, 29 Jan 2022 10:42:29 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sat, 29 Jan 2022 10:42:29 -0800 (PST)
In-Reply-To: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=207.195.86.218; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 207.195.86.218
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <13d421ff-227e-4333-bc97-7d4dcf5bf04fn@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Sat, 29 Jan 2022 18:42:29 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 0
 by: I am Rob - Sat, 29 Jan 2022 18:42 UTC

Would like to mention that under MacOS 10.13, one may have to go into System Prefences and under Security, unlock the lock to make changes to allow Apps to run that are not download from the Mac app Store.

Re: KEGS v1.16 released

<st86en$lh4$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=204&group=comp.emulators.apple2#204

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!aioe.org!1kzjxob1apDgcOKlV0dflQ.user.46.165.242.75.POSTED!not-for-mail
From: bpat...@bellsouth.spamisicky.net (Brian Patrie)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Mon, 31 Jan 2022 02:25:58 -0600
Organization: an elaborate system of piles and accidents
Message-ID: <st86en$lh4$1@gioia.aioe.org>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="22052"; posting-host="1kzjxob1apDgcOKlV0dflQ.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: Brian Patrie - Mon, 31 Jan 2022 08:25 UTC

I am Rob wrote:
>> - Add limited Video Overlay Card (VOC) support to add new SHR mode of 640x400
>> (interlaced).
>
> Does this take extensive knowledge of the VOC card to initialize and use that mode, or is it just an emulated area in memory in which on can just flip a softswitch and store data to a specific memory, just like the regular SHR screen?
>
> Would really like to use the 400 rows but don't have the VOC knowledge.

My understanding of the interlaced modes of the VOC is that one field is
in bank $E0, and the other in $E1 (or mainmem, and auxmem on a IIe).

Re: KEGS v1.16 released

<st9bfq$mrv$1@dont-email.me>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=205&group=comp.emulators.apple2#205

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: keg...@provalid.com (Kent Dickey)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Mon, 31 Jan 2022 18:58:02 -0000 (UTC)
Organization: provalid.com
Lines: 31
Message-ID: <st9bfq$mrv$1@dont-email.me>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com>
Injection-Date: Mon, 31 Jan 2022 18:58:02 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="b63af682798785251851dfc7477a0348";
logging-data="23423"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/50aydebaCbBt/WLLqiROx"
Cancel-Lock: sha1:FYDgP/0M01DvflbdIhee7xTI+Fc=
Originator: kegs@provalid.com (Kent Dickey)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
 by: Kent Dickey - Mon, 31 Jan 2022 18:58 UTC

In article <b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com>,
I am Rob <gids.rs@sasktel.net> wrote:
>> - Add limited Video Overlay Card (VOC) support to add new SHR mode of
>> 640x400 (interlaced).
>
>Does this take extensive knowledge of the VOC card to initialize and use
>that mode, or is it just an emulated area in memory in which on can just
>flip a softswitch and store data to a specific memory, just like the
>regular SHR screen?
>
>Would really like to use the 400 rows but don't have the VOC knowledge.

KEGS has limited support for the Apple Video Overlay Card (VOC). The VOC
supports a special 640x400 interlaced SHR video mode which is what KEGS also
supports. To turn on this mode, you need to do:

Enable VOC (Press F4, select "Enable VOC = Enabled")
c029:c1 # Turn on SHR
c0b1:39 # Set bits [5:4]=11 to enable Interlaced mode
c0b5:80 # Set bit 7 to enable Interlace mode

And then KEGS will show 640x400 (or 320x400) SHR screen, where even lines
(0,2,4,etc) come from bank $e1 like normal SHR mode, and odd lines come from
bank $e0 (from $2000-$9fff, using it's own palettes, etc.). The real VOC
shows interlaced data--it draws one frame of data from bank $e1, then the
next from of data from bank $e0, shifted down one line, etc., where each
from takes 16msec, for an effective display of 30fps. KEGS just draws both
bank $e1 and bank $e1 changes every frame at 60fps. This can be fixed if
anyone uses this mode and wants better accuracy.

Kent

Re: KEGS v1.16 released

<stiuog$7e1$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=206&group=comp.emulators.apple2#206

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!aioe.org!1kzjxob1apDgcOKlV0dflQ.user.46.165.242.75.POSTED!not-for-mail
From: bpat...@bellsouth.spamisicky.net (Brian Patrie)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Fri, 4 Feb 2022 04:22:07 -0600
Organization: an elaborate system of piles and accidents
Message-ID: <stiuog$7e1$1@gioia.aioe.org>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="7617"; posting-host="1kzjxob1apDgcOKlV0dflQ.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: Brian Patrie - Fri, 4 Feb 2022 10:22 UTC

Kent Dickey wrote:
> - Added DynaPro image support--mount a host directory as a ProDOS image of
> up to 32MB, to allow easy moving of files to/from emulation.
> See README.dynapro.txt.

Nice feature! But there doesn't appear to be a README.dynapro.txt. :(

I'm playing with it though. A sort option would be nice.
(Sorting a directory with Cat Doctor (had to try it) produces
interesting results on the host side. :P)

Re: KEGS v1.16 released

<stjurv$8bc$1@dont-email.me>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=207&group=comp.emulators.apple2#207

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: keg...@provalid.com (Kent Dickey)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Fri, 4 Feb 2022 19:30:07 -0000 (UTC)
Organization: provalid.com
Lines: 115
Message-ID: <stjurv$8bc$1@dont-email.me>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <stiuog$7e1$1@gioia.aioe.org>
Injection-Date: Fri, 4 Feb 2022 19:30:07 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="bdf20b99b09a8958e1f532c561703184";
logging-data="8556"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+n5nNwSFUy7YFz8ntmB6FG"
Cancel-Lock: sha1:qehkEtB+Eg1uazNgolmXwZtkIpE=
Originator: kegs@provalid.com (Kent Dickey)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
 by: Kent Dickey - Fri, 4 Feb 2022 19:30 UTC

In article <stiuog$7e1$1@gioia.aioe.org>,
Brian Patrie <bpatrie@bellsouth.spamisicky.net> wrote:
>Kent Dickey wrote:
>> - Added DynaPro image support--mount a host directory as a ProDOS image of
>> up to 32MB, to allow easy moving of files to/from emulation.
>> See README.dynapro.txt.
>
>Nice feature! But there doesn't appear to be a README.dynapro.txt. :(
>
>I'm playing with it though. A sort option would be nice.
>(Sorting a directory with Cat Doctor (had to try it) produces
>interesting results on the host side. :P)

Oops, it didn't get included due to a bug in my release script.

I'm including README.dynapro.txt.

Kent

DYNAPRO
-------

Dynapro is a KEGS feature where an emulated disk (140KB 5.25" in slot 6, 800KB
3.5" in slot 5, or any size up to 32MB in slot 7) volume is mapped to a host
(Mac, Linux) directory (and subdirectories). This allows easy access to move
files from emulation--just look at the files from outside KEGS on your host
computer, they are always up to date. It also provide a simple way to move
files into emulation: update the file under the Dynapro mount point, and then
remount the volume to ensure KEGS/ProDOS can see the changes.

How to enable
-------------

Create a folder on your Mac/Linux system. You can place files in it, or leave
it empty. From within KEGS, press F4, select Disk Configuration, and then use
arrows to move to the slot and drive you want to mount that folder as.

You have two choices: A slightly longer process where you can set the DynaPro
image size (if you want less than 32MB for a slot 7 image), or a shorter
process that always mounts the largest size for that slot.

Selecting the size:
------------------

Press "n" to create a new image. Select the size you would like with
left/right arrows if you picked slot 7. (slot 5 is always 800KB, and slot 6
is always 140KB). It's fine to always pick 32MB, the default. Scroll down to
Type, select "Dynamic ProDOS directory". Scroll down to "Create and name the
image". Use the normal image selection interface to navigate to the directory
you want to use. Press tab to switch to the path view (you can manually enter
parts of the path if you like), and while on the path, press Cmd-Enter to
select the named directory. Note: The directory that will be selected is the
path listed on the "Path: " line (relative to the Current KEGS Directory if it
doesn't start with a "/").

Using the maximum size:
----------------------

Press return on the slot/drive line you want to mount as a Dynapro directory.
Using selection, select into the directory you want to use, then press
Cmd-Enter to select that directory. A maximum size Dynapro directory will be
mounted. The maximum size for slot 7 images is 32767.5KB (65535 blocks).

How to use
----------

If you pick a directory that has files whose total size exceeds the size you
selected, it will fail to mount. The slot/drive entry will be commented out
showing no disk mounted.

Now, from within KEGS, you can do any operation to this volume that you would
have if it were a normal disk image--copy files, initialize it, etc. This
works under ProDOS 8 or GS/OS, or any program that supports ProDOS images.
All changes to the image as ProDOS volume are immediately reflected in the
directory on your host machine.

Gotchas to watch out for
------------------------

KEGS aggressively makes the directory match the ProDOS volume. If you erase a
file using GS/OS (as an example), KEGS will erase that file from the directory
you selected. If you format the volume, KEGS will erase all files in the
directory you selected. So: be careful what you points KEGS at!

How it works
------------

KEGS keeps a version of the ProDOS volume in memory (so 32MB if you mount a
32MB Dynapro directory). Whenever any writes happen, KEGS looks to see what
file(s) are affected, and reparses them to recreate the files in the Dynapro
directory on your host system. Since ProDOS and GS/OS write one block at a
time, there are many times during a write to a file where the file is invalid.
KEGS erases all files from the Dynapro host directory when the ProDOS file
appears invalid, even briefly. So, writing to a file can cause it to be
erased from the Dynapro host directory until the file is completely written
and appears valid again.

How to copy files from your host system to KEGS emulation
---------------------------------------------------------

ProDOS and GS/OS do not expect ProDOS volumes to change behind their back. To
reliably transfer files from your host system into the emulated //gs system,
you should unmount and re-mount the Dynapro directory. This tells ProDOS 8
and GS/OS to expect changes to the volume, and to see any changes you've made.

So if you create a new file called "NEW.TXT" in the Dynapro host directory, it
doesn't show up in KEGS right away.

Press F4, go to the Disk Configuration page (you may already be there if you
left the F4 configuration here), select the slot/drive of the Dynapro volume
to remount and press Return. A file selection dialog appears. Just press
Cmd-Enter to re-mount the image (the selection for the existing volume will
already be correct). Press F4 to return to the emulated system.

Re: KEGS v1.16 released

<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=208&group=comp.emulators.apple2#208

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:a05:620a:40c8:: with SMTP id g8mr5359370qko.706.1644547774407;
Thu, 10 Feb 2022 18:49:34 -0800 (PST)
X-Received: by 2002:a05:620a:29d2:: with SMTP id s18mr5491583qkp.611.1644547774233;
Thu, 10 Feb 2022 18:49:34 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Thu, 10 Feb 2022 18:49:34 -0800 (PST)
In-Reply-To: <st9bfq$mrv$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=207.195.86.12; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 207.195.86.12
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com> <st9bfq$mrv$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Fri, 11 Feb 2022 02:49:34 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 19
 by: I am Rob - Fri, 11 Feb 2022 02:49 UTC

> >> - Add limited Video Overlay Card (VOC) support to add new SHR mode of
> >> 640x400 (interlaced).
> >
> >Does this take extensive knowledge of the VOC card to initialize and use
> >that mode, or is it just an emulated area in memory in which on can just
> >flip a softswitch and store data to a specific memory, just like the
> >regular SHR screen?

> KEGS has limited support for the Apple Video Overlay Card (VOC). The VOC
> supports a special 640x400 interlaced SHR video mode which is what KEGS also
> supports. To turn on this mode, you need to do:
>
> Enable VOC (Press F4, select "Enable VOC = Enabled")
> c029:c1 # Turn on SHR
> c0b1:39 # Set bits [5:4]=11 to enable Interlaced mode
> c0b5:80 # Set bit 7 to enable Interlace mode

Looks good on full screen. Too bad the interlaced mode makes it a little harder to display fonts. Was hoping to display fonts at 132 characters x 48 lines.

Is C0B1 supposed to be $30, or what does the 9 supposed to do?

Re: KEGS v1.16 released

<su5pqq$2k5$1@dont-email.me>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=209&group=comp.emulators.apple2#209

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: keg...@provalid.com (Kent Dickey)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Fri, 11 Feb 2022 13:54:34 -0000 (UTC)
Organization: provalid.com
Lines: 55
Message-ID: <su5pqq$2k5$1@dont-email.me>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com> <st9bfq$mrv$1@dont-email.me> <f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com>
Injection-Date: Fri, 11 Feb 2022 13:54:34 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="b7f816ab06eebe02dfb1ec8c9f36169c";
logging-data="2693"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/yaSbTgj99FBOEl08h6xRc"
Cancel-Lock: sha1:YFsEK/YcetdItfcU65VhQafTqV4=
Originator: kegs@provalid.com (Kent Dickey)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
 by: Kent Dickey - Fri, 11 Feb 2022 13:54 UTC

In article <f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com>,
I am Rob <gids.rs@sasktel.net> wrote:
>> >> - Add limited Video Overlay Card (VOC) support to add new SHR mode of
>> >> 640x400 (interlaced).
>> >
>> >Does this take extensive knowledge of the VOC card to initialize and use
>> >that mode, or is it just an emulated area in memory in which on can just
>> >flip a softswitch and store data to a specific memory, just like the
>> >regular SHR screen?
>
>> KEGS has limited support for the Apple Video Overlay Card (VOC). The VOC
>> supports a special 640x400 interlaced SHR video mode which is what KEGS also
>> supports. To turn on this mode, you need to do:
>>
>> Enable VOC (Press F4, select "Enable VOC = Enabled")
>> c029:c1 # Turn on SHR
>> c0b1:39 # Set bits [5:4]=11 to enable Interlaced mode
>> c0b5:80 # Set bit 7 to enable Interlace mode
>
>Looks good on full screen. Too bad the interlaced mode makes it a
>little harder to display fonts. Was hoping to display fonts at 132
>characters x 48 lines.
>
>Is C0B1 supposed to be $30, or what does the 9 supposed to do?

The VOC has a lot of logic to allow an input video source to be blended with
Apple II video (Video Overlay) and sent out a special video port. To really
use the VOC card requires two monitors. Here's what the KEGS code has
comments for $c0b1 and $c0b5:

case 1: // 0xc0b1
// bit 0: R/W: 1=GG Bus Enable
// When 0, I think VOC ignores writes to $c023,etc.
// bit 2: R/W: 0=OutChromaFilter enabled, 1=ChromaFilter disab
// bit 2 is also TextMonoOver somehow using bit[5]==1
// bit 3: R/W: 1=MainPageLin
// bits 5:4: R/W: 00=Aux mem; 01=Main Memory; 11=Interlaced
// bit 6: R/W: 1=Enable VBL Interrupt
// bit 7: R/W: 1=Enable Line interrupts
...
case 5: // 0xc0b5
// bits 3:0: R/W: KeyColor Red
// bit 4: R/W: OutExtBlank: 0=Graphics, 1=External
// bit 5: R/W: 0=GenLock enabled, 1=GenLock disabled
// bit 6: R/W: 0=KeyColor enabled, 1=KeyColor disabled
// bit 7: R/W: 1=Interlace mode enabled

This information is from various places and the VOC header files.

KEGS ignore those other bits, but I gave the proper values for a real VOC
card. If you write $c0b1:30, the the VOC will stop updating its video
memory and the video memory will be all scrambled looking since bit 3 works
like $c029 bit 6 for Aux memory.

Kent

Re: KEGS v1.16 released

<87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=210&group=comp.emulators.apple2#210

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:a05:620a:4445:: with SMTP id w5mr1647848qkp.459.1644610988520;
Fri, 11 Feb 2022 12:23:08 -0800 (PST)
X-Received: by 2002:ac8:5a0e:: with SMTP id n14mr2321070qta.493.1644610988370;
Fri, 11 Feb 2022 12:23:08 -0800 (PST)
Path: i2pn2.org!i2pn.org!aioe.org!news.mixmin.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Fri, 11 Feb 2022 12:23:08 -0800 (PST)
In-Reply-To: <su5pqq$2k5$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=142.165.85.128; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 142.165.85.128
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<b9fc4cf6-94d2-4106-9492-be0ae34c345bn@googlegroups.com> <st9bfq$mrv$1@dont-email.me>
<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Fri, 11 Feb 2022 20:23:08 +0000
Content-Type: text/plain; charset="UTF-8"
 by: I am Rob - Fri, 11 Feb 2022 20:23 UTC

> >> KEGS has limited support for the Apple Video Overlay Card (VOC). The VOC
> >> supports a special 640x400 interlaced SHR video mode which is what KEGS also
> >> supports. To turn on this mode, you need to do:
> >>
> >> Enable VOC (Press F4, select "Enable VOC = Enabled")
> >> c029:c1 # Turn on SHR
> >> c0b1:39 # Set bits [5:4]=11 to enable Interlaced mode
> >> c0b5:80 # Set bit 7 to enable Interlace mode
> >
> >Looks good on full screen. Too bad the interlaced mode makes it a
> >little harder to display fonts. Was hoping to display fonts at 132
> >characters x 48 lines.
> >
> >Is C0B1 supposed to be $30, or what does the 9 supposed to do?
> The VOC has a lot of logic to allow an input video source to be blended with
> Apple II video (Video Overlay) and sent out a special video port. To really
> use the VOC card requires two monitors. Here's what the KEGS code has
> comments for $c0b1 and $c0b5:
>
> case 1: // 0xc0b1
> // bit 0: R/W: 1=GG Bus Enable
> // When 0, I think VOC ignores writes to $c023,etc.
> // bit 2: R/W: 0=OutChromaFilter enabled, 1=ChromaFilter disab
> // bit 2 is also TextMonoOver somehow using bit[5]==1
> // bit 3: R/W: 1=MainPageLin
> // bits 5:4: R/W: 00=Aux mem; 01=Main Memory; 11=Interlaced
> // bit 6: R/W: 1=Enable VBL Interrupt
> // bit 7: R/W: 1=Enable Line interrupts
> ...
> case 5: // 0xc0b5
> // bits 3:0: R/W: KeyColor Red
> // bit 4: R/W: OutExtBlank: 0=Graphics, 1=External
> // bit 5: R/W: 0=GenLock enabled, 1=GenLock disabled
> // bit 6: R/W: 0=KeyColor enabled, 1=KeyColor disabled
> // bit 7: R/W: 1=Interlace mode enabled
>
> This information is from various places and the VOC header files.
>
> KEGS ignore those other bits, but I gave the proper values for a real VOC
> card. If you write $c0b1:30, the the VOC will stop updating its video
> memory and the video memory will be all scrambled looking since bit 3 works
> like $c029 bit 6 for Aux memory.

Thanks for the explanation. It is probably not likely I will write software to be fully compatible with a real VOC on a real computer.

I can see benefits to having a linear mode over the interlaced mode, though. The interlaced mode would allow up to 512 colors per screen, nicer for graphics.

But linear mode would be better for displaying fonts and doing compression. I could use the same font driver without having to display every second line of a font, or the same graphics compressor, as used for regular SHR.

Could you let me know if linear mode is in the works? If not, then I will just have to live with it and re-write some drivers to make use of its interlaced mode.

Thanks for make this easy to work with, for someone without a VOC card.

Re: KEGS v1.16 released

<sub6ad$8p1$1@dont-email.me>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=211&group=comp.emulators.apple2#211

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: keg...@provalid.com (Kent Dickey)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Sun, 13 Feb 2022 14:58:21 -0000 (UTC)
Organization: provalid.com
Lines: 104
Message-ID: <sub6ad$8p1$1@dont-email.me>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me> <87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com>
Injection-Date: Sun, 13 Feb 2022 14:58:21 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="c95aff59fcd7ecdcd9110f554f65d54f";
logging-data="8993"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/MS4oUZSmXEoSxlK/i1bQR"
Cancel-Lock: sha1:k7seWPRRU4f+4/y0EruQkCUQupE=
Originator: kegs@provalid.com (Kent Dickey)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
 by: Kent Dickey - Sun, 13 Feb 2022 14:58 UTC

In article <87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com>,
I am Rob <gids.rs@sasktel.net> wrote:
>
>> >> KEGS has limited support for the Apple Video Overlay Card (VOC). The VOC
>> >> supports a special 640x400 interlaced SHR video mode which is what
>KEGS also
>> >> supports. To turn on this mode, you need to do:
>> >>
>> >> Enable VOC (Press F4, select "Enable VOC = Enabled")
>> >> c029:c1 # Turn on SHR
>> >> c0b1:39 # Set bits [5:4]=11 to enable Interlaced mode
>> >> c0b5:80 # Set bit 7 to enable Interlace mode
>> >
>> >Looks good on full screen. Too bad the interlaced mode makes it a
>> >little harder to display fonts. Was hoping to display fonts at 132
>> >characters x 48 lines.
>> >
>> >Is C0B1 supposed to be $30, or what does the 9 supposed to do?
>> The VOC has a lot of logic to allow an input video source to be blended with
>> Apple II video (Video Overlay) and sent out a special video port. To really
>> use the VOC card requires two monitors. Here's what the KEGS code has
>> comments for $c0b1 and $c0b5:
>>
>> case 1: // 0xc0b1
>> // bit 0: R/W: 1=GG Bus Enable
>> // When 0, I think VOC ignores writes to $c023,etc.
>> // bit 2: R/W: 0=OutChromaFilter enabled, 1=ChromaFilter disab
>> // bit 2 is also TextMonoOver somehow using bit[5]==1
>> // bit 3: R/W: 1=MainPageLin
>> // bits 5:4: R/W: 00=Aux mem; 01=Main Memory; 11=Interlaced
>> // bit 6: R/W: 1=Enable VBL Interrupt
>> // bit 7: R/W: 1=Enable Line interrupts
>> ...
>> case 5: // 0xc0b5
>> // bits 3:0: R/W: KeyColor Red
>> // bit 4: R/W: OutExtBlank: 0=Graphics, 1=External
>> // bit 5: R/W: 0=GenLock enabled, 1=GenLock disabled
>> // bit 6: R/W: 0=KeyColor enabled, 1=KeyColor disabled
>> // bit 7: R/W: 1=Interlace mode enabled
>>
>> This information is from various places and the VOC header files.
>>
>> KEGS ignore those other bits, but I gave the proper values for a real VOC
>> card. If you write $c0b1:30, the the VOC will stop updating its video
>> memory and the video memory will be all scrambled looking since bit 3 works
>> like $c029 bit 6 for Aux memory.
>
>
>Thanks for the explanation. It is probably not likely I will write
>software to be fully compatible with a real VOC on a real computer.
>
>I can see benefits to having a linear mode over the interlaced mode,
>though. The interlaced mode would allow up to 512 colors per screen,
>nicer for graphics.
>
>But linear mode would be better for displaying fonts and doing
>compression. I could use the same font driver without having to display
>every second line of a font, or the same graphics compressor, as used
>for regular SHR.
>
>Could you let me know if linear mode is in the works? If not, then I
>will just have to live with it and re-write some drivers to make use of
>its interlaced mode.
>
>Thanks for make this easy to work with, for someone without a VOC card.

I'm not sure what you're referring to as "linear mode". KEGS adds
emulation for the VOC interlaced SHR mode. You'll have to define what
you want so I can understand it.

Several people over the years have asked KEGS to support something like
VGA graphics or whatever. And that's the limit of what they asked for.
How should this be done? What memory banks in the IIgs will hold the
memory buffer?

All people requesting something like this have never followed up with
any proof-of-concept software. And no one had produced anything even
roughly approaching a specification--how it would work, how the memory
maps to the screen, how to detect it's present, how it interacts with
existing modes, etc. Will there be a patched Quickdraw II to support
your new graphics mode, provide a library of routines for others to use,
etc.?

There was a Second Sight card for the IIgs which implemented VGA (if I
remember right), and there was almost no software support for it. And it
was not well designed and was buggy. I don't see how implementing that in
KEGS would be useful since who's going to write the software to use it?

VOC 400 lines of SHR interlaced is different--there's existing hardware
which supports it, rumors of software which supports it (which I was
unable to get working, since it was in French), and it is somewhat
defined. So I implemented it as a nice challenge since it wasn't too
hard. Note that I state KEGS cheats and doesn't really implement the
VOC 400 line interlaced mode right-- for static screens it's basically
the same, but dynamic screen changes are not modeled in KEGS the same
way as a VOC. And that's strictly because I implemented in a simple
way. My thinking was if no one ever uses the VOC in KEGS, I'm out only
a few hours of effort. And if someone uses it, I can look into
improving the KEGS emulation.

I recommend you try to maintain VOC compatibility so that any 400-line
SHR code you write would work on a real VOC.

Kent

Re: KEGS v1.16 released

<46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=212&group=comp.emulators.apple2#212

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:ad4:4ee9:: with SMTP id dv9mr7349366qvb.41.1644777774079;
Sun, 13 Feb 2022 10:42:54 -0800 (PST)
X-Received: by 2002:a05:6214:2302:: with SMTP id gc2mr7523700qvb.104.1644777773964;
Sun, 13 Feb 2022 10:42:53 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sun, 13 Feb 2022 10:42:53 -0800 (PST)
In-Reply-To: <sub6ad$8p1$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=142.165.85.128; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 142.165.85.128
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me>
<87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com> <sub6ad$8p1$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Sun, 13 Feb 2022 18:42:54 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: I am Rob - Sun, 13 Feb 2022 18:42 UTC

> All people requesting something like this have never followed up with
> any proof-of-concept software. And no one had produced anything even
> roughly approaching a specification--how it would work, how the memory
> maps to the screen, how to detect it's present, how it interacts with
> existing modes, etc. Will there be a patched Quickdraw II to support
> your new graphics mode, provide a library of routines for others to use,
> etc.?
>
> There was a Second Sight card for the IIgs which implemented VGA (if I
> remember right), and there was almost no software support for it. And it
> was not well designed and was buggy. I don't see how implementing that in
> KEGS would be useful since who's going to write the software to use it?
>
> VOC 400 lines of SHR interlaced is different--there's existing hardware
> which supports it, rumors of software which supports it (which I was
> unable to get working, since it was in French), and it is somewhat
> defined. So I implemented it as a nice challenge since it wasn't too
> hard. Note that I state KEGS cheats and doesn't really implement the
> VOC 400 line interlaced mode right-- for static screens it's basically
> the same, but dynamic screen changes are not modeled in KEGS the same
> way as a VOC. And that's strictly because I implemented in a simple
> way. My thinking was if no one ever uses the VOC in KEGS, I'm out only
> a few hours of effort. And if someone uses it, I can look into
> improving the KEGS emulation.
>
> I recommend you try to maintain VOC compatibility so that any 400-line
> SHR code you write would work on a real VOC.

Oh, I will be using it alright! I have been wanting something like this for awhile. I don't think anyone really cares how you implement VGA or VOC as long as it is there for people to use to allow for the extra screen resolution. And I don't think it is a big priority to have it compatible with existing hardware, as it will be mostly used for personal use.

As it stands, to display a font in VOC mode, I would have to program the driver to printer every second line of a font character to Bank E0, then every other second line to Bank E1.

With Linear mode, the top half of the screen (first 200 lines) would be in bank E0 and the bottom half of the screen (last 200 lines) would be bank E1.. This way the font driver doesn't have to break up the font characters to print to alternate lines. Any pre-existing Font display routines can be used as is, and just extended to print to lines 201-399 with just one bank switch call.

Rob

Re: KEGS v1.16 released

<2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=213&group=comp.emulators.apple2#213

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:ad4:5bee:0:b0:432:f52d:28b6 with SMTP id k14-20020ad45bee000000b00432f52d28b6mr10079914qvc.44.1646161998988;
Tue, 01 Mar 2022 11:13:18 -0800 (PST)
X-Received: by 2002:a37:6608:0:b0:5f1:74f6:5521 with SMTP id
a8-20020a376608000000b005f174f65521mr14433499qkc.547.1646161998838; Tue, 01
Mar 2022 11:13:18 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Tue, 1 Mar 2022 11:13:18 -0800 (PST)
In-Reply-To: <46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=207.195.86.143; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 207.195.86.143
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me>
<87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com> <sub6ad$8p1$1@dont-email.me>
<46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Tue, 01 Mar 2022 19:13:18 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 33
 by: I am Rob - Tue, 1 Mar 2022 19:13 UTC

This is how I would think of support for VGA should be implemented.

For a 640x400x256 screen would require 4 full banks.

Each pixel would be represented by a full byte requiring 640 ($280) bytes per line.

100 lines would require 640*100=64000 bytes in each bank

We would not need the scan lines any more and the 256 color selection would be made up of whole bytes. 4 bytes required for each color description.

Each Color description requires whole bytes of Red, Green & Blue and one page for luminescence. In each bank of memory it would look like:

$FC00.FCFF - each byte being the red color for the color selected by the pixel
$FD00.FDFF - each byte being the green color for the color selected by the pixel
$FE00.FEFF - each byte being the blue color for the color seclected by the pixel
$FF00.FFFF - each byte being the luminescence of the color selected by the pixel

For example. if the pixel # is $22 then the color for that pixel is derived from
red - $FC00 + $22
green - $FD00 + $22
blue - $FE00 + $22
lum - $FF00 + $22

4 pages of color description = $400 (1024) bytes and gives us a choice of 256 colors out of 16,777,214.

A partial screen of graphics then would require a total of 65024 bytes needed for 100 lines of graphics and 512 bytes of free memory.

Then, for a 640x400 screen, 4 banks of contiguous RAM memory will be needed.
Each bank uses memory from $0200.$FBFF for the screen and $FC00.FFFF for the color palettes
Each bank holds 100 lines of 640 pixels requiring 640 ($280) bytes per line in linear fashion
Linear meaning the first bank views the top 100 lines, 2nd bank second 100 lines, 3rd bank third set of 100 lines and 4th bank last set of 100 lines.

Interlaced vs linear. Although an interlaced mode would allow dithered colors to be represented and thus more colors, linear mode is way better for displaying fonts and doing graphics compression.

Re: KEGS v1.16 released

<62ab0642-661d-490e-8829-028c90b42586n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=214&group=comp.emulators.apple2#214

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:a05:6214:5082:b0:435:911f:1bc1 with SMTP id kk2-20020a056214508200b00435911f1bc1mr4964973qvb.128.1646691951012;
Mon, 07 Mar 2022 14:25:51 -0800 (PST)
X-Received: by 2002:a05:620a:210f:b0:67b:119d:f32d with SMTP id
l15-20020a05620a210f00b0067b119df32dmr6267861qkl.316.1646691950792; Mon, 07
Mar 2022 14:25:50 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Mon, 7 Mar 2022 14:25:50 -0800 (PST)
In-Reply-To: <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=82.124.251.231; posting-account=c4quJwoAAABUj_DOmUN3HIuXxN1tF7gT
NNTP-Posting-Host: 82.124.251.231
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me>
<87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com> <sub6ad$8p1$1@dont-email.me>
<46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com> <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <62ab0642-661d-490e-8829-028c90b42586n@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: ntn.vig...@gmail.com (Antoine Vignau)
Injection-Date: Mon, 07 Mar 2022 22:25:51 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 22
 by: Antoine Vignau - Mon, 7 Mar 2022 22:25 UTC

Hi All,

I agree with nearly everything written by "I am Rob" but I would make data start at $0 and not at $200.
I would add the use of a softswitch to tell the emulator each bank number must be used to display the 400 lines. The advantage would be to use two or more VGA pages. A great option for game programmers :-)

People should know that A LOT of QuickDraw II routines work in 64K only, despite the huge space coordinates of QD II. That is a big limit of the Apple IIgs implementation of QuickDraw.

Please remember Facelift. The objective was to enhance/rewrite the toolbox to support more than the current video modes. That is a great idea (and I still want to make it live) but one would have to enhance/rewrite a lot of code, even TextEdit with the scrolling routines.

More than VGA, I would be more interested to get a MCGA (320x200x256) mode in emulators. The TurboRez for emulators. With the same multiple screen option as described above. It would be cool to write games for such a machine, and we would stay in a 64K bank.

Antoine

Re: KEGS v1.16 released

<GZednaL-MbxwmLr_nZ2dnUU7-YXNnZ2d@giganews.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=215&group=comp.emulators.apple2#215

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Tue, 08 Mar 2022 01:29:49 -0600
User-Agent: NewsTap/5.5 (iPhone/iPod Touch)
Cancel-Lock: sha1:O309nFECNS/s0WOhB/SdHgufosY=
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Content-Type: text/plain; charset=UTF-8
Mime-Version: 1.0
Content-Transfer-Encoding: 8bit
From: mjma...@aol.com (Michael J. Mahon)
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com>
<su5pqq$2k5$1@dont-email.me>
<87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com>
<sub6ad$8p1$1@dont-email.me>
<46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
<2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>
<62ab0642-661d-490e-8829-028c90b42586n@googlegroups.com>
Message-ID: <GZednaL-MbxwmLr_nZ2dnUU7-YXNnZ2d@giganews.com>
Date: Tue, 08 Mar 2022 01:29:49 -0600
Lines: 42
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-rqSkh+MOji32rFF7em9Uw30ZAAdZ8av0XKmYLgHlhRvi3oHVTE6AwSzG2S14uAra+HD2cMTK0c4V9j1!D5q9mXp0LXgkQlKfGB4kjSLYnF8oYvg6uHA517GCyB2OrWENSeSfrqw1BNJ45Wp0aPhGJGOkVj8=
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3272
 by: Michael J. Mahon - Tue, 8 Mar 2022 07:29 UTC

Antoine Vignau <ntn.vignau@gmail.com> wrote:
> Hi All,
>
> I agree with nearly everything written by "I am Rob" but I would make
> data start at $0 and not at $200.
> I would add the use of a softswitch to tell the emulator each bank number
> must be used to display the 400 lines. The advantage would be to use two
> or more VGA pages. A great option for game programmers :-)
>
> People should know that A LOT of QuickDraw II routines work in 64K only,
> despite the huge space coordinates of QD II. That is a big limit of the
> Apple IIgs implementation of QuickDraw.
>
> Please remember Facelift. The objective was to enhance/rewrite the
> toolbox to support more than the current video modes. That is a great
> idea (and I still want to make it live) but one would have to
> enhance/rewrite a lot of code, even TextEdit with the scrolling routines.
>
> More than VGA, I would be more interested to get a MCGA (320x200x256)
> mode in emulators. The TurboRez for emulators. With the same multiple
> screen option as described above. It would be cool to write games for
> such a machine, and we would stay in a 64K bank.
>
> Antoine
>

And an MCGA mode would be more than 4 times faster for animation and
graphics changes.

More and bigger pixels is slower and slower. ;-)

We only have multi megapixel displays because memory and processors got
much cheaper and much faster.

And I think Kent’s point about it being hard to justify coding (or building
a card!) for a new graphics mode if no significant software supports it.
The Apple II universe has quite a few hardware extensions that *sounded*
really useful, but they never overcame the “chicken/egg” problem.

--
-michael - NadaNet 3.1, AppleCrate II, and Burroughs 220 emulation:
http://michaeljmahon.com

Re: KEGS v1.16 released

<alpine.DEB.2.21.2203081357210.13821@sd-119843.dedibox.fr>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=216&group=comp.emulators.apple2#216

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: usots...@buric.co (Steve Nickolas)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Tue, 8 Mar 2022 13:59:36 -0500
Organization: A noiseless patient Spider
Lines: 23
Message-ID: <alpine.DEB.2.21.2203081357210.13821@sd-119843.dedibox.fr>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <f2bf22cc-e731-483e-857a-8769f23d0c2bn@googlegroups.com> <su5pqq$2k5$1@dont-email.me> <87227c06-e7c8-4c20-b732-fb4f5f290e27n@googlegroups.com> <sub6ad$8p1$1@dont-email.me>
<46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com> <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com> <62ab0642-661d-490e-8829-028c90b42586n@googlegroups.com> <GZednaL-MbxwmLr_nZ2dnUU7-YXNnZ2d@giganews.com>
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1738776716-1646765978=:13821"
Injection-Info: reader02.eternal-september.org; posting-host="b20b43c0e6ab11bacb61443e5379dedc";
logging-data="20340"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+zcCxHyBiM0J+DSFWeVCtjdiGrAJAIIw0="
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
Cancel-Lock: sha1:By1PDaC/C1Qy/tVLGXkrlQKTWI0=
In-Reply-To: <GZednaL-MbxwmLr_nZ2dnUU7-YXNnZ2d@giganews.com>
X-X-Sender: mary@sd-119843.dedibox.fr
 by: Steve Nickolas - Tue, 8 Mar 2022 18:59 UTC

On Tue, 8 Mar 2022, Michael J. Mahon wrote:

> And I think Kent’s point about it being hard to justify coding (or building
> a card!) for a new graphics mode if no significant software supports it.
> The Apple II universe has quite a few hardware extensions that *sounded*
> really useful, but they never overcame the “chicken/egg” problem.

I think the only examples I'm aware of of a third-party Apple ][
peripheral becoming useful enough to be supported by much of anything are
parallel port cards and the Mockingboard.

-uso.

Re: KEGS v1.16 released

<t09fcu$jak$1@dont-email.me>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=217&group=comp.emulators.apple2#217

 copy link   Newsgroups: comp.emulators.apple2
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: keg...@provalid.com (Kent Dickey)
Newsgroups: comp.emulators.apple2
Subject: Re: KEGS v1.16 released
Date: Wed, 9 Mar 2022 05:53:34 -0000 (UTC)
Organization: provalid.com
Lines: 75
Message-ID: <t09fcu$jak$1@dont-email.me>
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com> <sub6ad$8p1$1@dont-email.me> <46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com> <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>
Injection-Date: Wed, 9 Mar 2022 05:53:34 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="441147cc43db5d02c971fc60e637cd8f";
logging-data="19796"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+YW+tQDjP9DwrarNBqv7/j"
Cancel-Lock: sha1:SQJfqRtmeOAnZJQ0Wxa12eeQtgM=
Originator: kegs@provalid.com (Kent Dickey)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
 by: Kent Dickey - Wed, 9 Mar 2022 05:53 UTC

In article <2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com>,
I am Rob <gids.rs@sasktel.net> wrote:
>This is how I would think of support for VGA should be implemented.
>
>For a 640x400x256 screen would require 4 full banks.
>
>Each pixel would be represented by a full byte requiring 640 ($280)
>bytes per line.
>
>100 lines would require 640*100=64000 bytes in each bank
>
>We would not need the scan lines any more and the 256 color selection
>would be made up of whole bytes. 4 bytes required for each color
>description.
>
>Each Color description requires whole bytes of Red, Green & Blue and one
>page for luminescence. In each bank of memory it would look like:
>
>$FC00.FCFF - each byte being the red color for the color selected by the pixel
>$FD00.FDFF - each byte being the green color for the color selected by the pixel
>$FE00.FEFF - each byte being the blue color for the color seclected by the pixel
>$FF00.FFFF - each byte being the luminescence of the color selected by the pixel
>
>For example. if the pixel # is $22 then the color for that pixel is
>derived from
>red - $FC00 + $22
>green - $FD00 + $22
>blue - $FE00 + $22
>lum - $FF00 + $22
>
>4 pages of color description = $400 (1024) bytes and gives us a choice
>of 256 colors out of 16,777,214.
>
>A partial screen of graphics then would require a total of 65024 bytes
>needed for 100 lines of graphics and 512 bytes of free memory.
>
>
>Then, for a 640x400 screen, 4 banks of contiguous RAM memory will be needed.
>Each bank uses memory from $0200.$FBFF for the screen and $FC00.FFFF for
>the color palettes
>Each bank holds 100 lines of 640 pixels requiring 640 ($280) bytes per
>line in linear fashion
>Linear meaning the first bank views the top 100 lines, 2nd bank second
>100 lines, 3rd bank third set of 100 lines and 4th bank last set of 100
>lines.
>
>Interlaced vs linear. Although an interlaced mode would allow dithered
>colors to be represented and thus more colors, linear mode is way better
>for displaying fonts and doing graphics compression.

How would this mode be enabled? Do you want to support switching in and
out of the mode multiple times per screen? When are the palettes
sampled-- once before line 0, or before each line, or effectively
instantly (so if the screen is all $22 bytes, changing the the palette
entry for $22 red immediately changes the color for that line from then
on)? What banks do you want to use?

If you want the palette changes to instantly show up, it's much more
work to implement. I'd like the palettes to be sampled just before line
0, and then they are unchangeable for that screen.

What kind of software do you expect to use this mode? As has been pointed
out, 2.8MHz code will very slowly update the screen. It's 8x the data,
so even "fast" routines will be noticeably slow.

KEGS already supports the VOC to deliver 640x400x2 (2-bit color) (or
320x400x4, meaning 4-bit color), and as far as I know, no one's bothered
to do anything with it yet (which does not surprise me, the software to
use these things on the IIgs is much harder to write than the code to
implement it). I could more easily add a new VOC enhanced mode to do
320x200x8 (using bank $e0 for the upper 4 bits of the palette index, and
bank $e1 for the lower 4 bits, using the same palette locations in bank
$e1 and bank $e0 to give 24-bit color).

Kent

Re: KEGS v1.16 released

<ce253d16-c3e6-490e-b764-7b461ccb2fc2n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=218&group=comp.emulators.apple2#218

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:a05:6214:21a3:b0:441:35fd:920e with SMTP id t3-20020a05621421a300b0044135fd920emr15059904qvc.41.1649014488223;
Sun, 03 Apr 2022 12:34:48 -0700 (PDT)
X-Received: by 2002:ac8:7e82:0:b0:2eb:8ebd:6f3f with SMTP id
w2-20020ac87e82000000b002eb8ebd6f3fmr15226560qtj.79.1649014488052; Sun, 03
Apr 2022 12:34:48 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sun, 3 Apr 2022 12:34:47 -0700 (PDT)
In-Reply-To: <t09fcu$jak$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=142.165.85.242; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 142.165.85.242
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<sub6ad$8p1$1@dont-email.me> <46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
<2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com> <t09fcu$jak$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ce253d16-c3e6-490e-b764-7b461ccb2fc2n@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Sun, 03 Apr 2022 19:34:48 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: I am Rob - Sun, 3 Apr 2022 19:34 UTC

> >This is how I would think of support for VGA should be implemented.
> >
> >For a 640x400x256 screen would require 4 full banks.
> >
> >Each pixel would be represented by a full byte requiring 640 ($280)
> >bytes per line.
> >
> >100 lines would require 640*100=64000 bytes in each bank
> >
> >We would not need the scan lines any more and the 256 color selection
> >would be made up of whole bytes. 4 bytes required for each color
> >description.
> >
> >Each Color description requires whole bytes of Red, Green & Blue and one
> >page for luminescence. In each bank of memory it would look like:
> >
> >$FC00.FCFF - each byte being the red color for the color selected by the pixel
> >$FD00.FDFF - each byte being the green color for the color selected by the pixel
> >$FE00.FEFF - each byte being the blue color for the color seclected by the pixel
> >$FF00.FFFF - each byte being the luminescence of the color selected by the pixel
> >
> >For example. if the pixel # is $22 then the color for that pixel is
> >derived from
> >red - $FC00 + $22
> >green - $FD00 + $22
> >blue - $FE00 + $22
> >lum - $FF00 + $22
> >
> >4 pages of color description = $400 (1024) bytes and gives us a choice
> >of 256 colors out of 16,777,214.
> >
> >A partial screen of graphics then would require a total of 65024 bytes
> >needed for 100 lines of graphics and 512 bytes of free memory.
> >
> >
> >Then, for a 640x400 screen, 4 banks of contiguous RAM memory will be needed.
> >Each bank uses memory from $0200.$FBFF for the screen and $FC00.FFFF for
> >the color palettes
> >Each bank holds 100 lines of 640 pixels requiring 640 ($280) bytes per
> >line in linear fashion
> >Linear meaning the first bank views the top 100 lines, 2nd bank second
> >100 lines, 3rd bank third set of 100 lines and 4th bank last set of 100
> >lines.
> >
> >Interlaced vs linear. Although an interlaced mode would allow dithered
> >colors to be represented and thus more colors, linear mode is way better
> >for displaying fonts and doing graphics compression.

That's strange. Sorry, didn't get back to you sooner, Kent. I read Steve's and Michael's posts and even though you wrote your post an hour earlier than Steves, it didn't show up til a bit after. So seeing Steve as the last poster, I didn't check this thread til now.

> What kind of software do you expect to use this mode? As has been pointed
> out, 2.8MHz code will very slowly update the screen. It's 8x the data,
> so even "fast" routines will be noticeably slow.
I expect this mode will only be used or supported with your emulator. KEGS runs at 1.8 Ghz in unlimited mode in my emulator, as long as you don't bottle-neck viewing VGA mode down to 2.8 Mhz. Shouldn't be a problem for software to keep up. The only thing I would request is that the vertical line number of the line being scanned be returned in $C02E.C02F, ($C02E is normally the vertical line and C02F the horizontal position). Since we are in VGA mode, this shouldn't interfere with their normal usage. And it would help a great deal if $C02E were limited to 0-99 for line #'s and $C02F would be 0-3 for bank #'s. And $C019 still used for timing the VBL when it reaches the top of the screen to allow for 60 FPS. Unless someone would like to see 120 FPS?

> How would this mode be enabled? Do you want to support switching in and
> out of the mode multiple times per screen? When are the palettes
> sampled-- once before line 0, or before each line, or effectively
> instantly (so if the screen is all $22 bytes, changing the the palette
> entry for $22 red immediately changes the color for that line from then
> on)? What banks do you want to use?

You used $C0B1 and $C0B5 for VOC initialization. If you don't support VOC any further than this and VGA mode will only be used in your emulator, is there any reason we can't use the same locations. I still may use VOC even though VGA is available and would be nice to only have to remember one set of locations. How about setting just setting $C0B1 and $C0B5 with hi-bits set to enable VGA mode. And the linear bits of those bytes are set to zero, in case you want to enable linear mode down the road, you can use the same way as VOC does.

As for palette sampling. They call it racing the beam. But yes, I think the palettes should be read before each line is scanned to screen. For games that do animation, I think this is a must. It is not necessary to re-read the palette as each pixel is plotted. So the sequence would be:

1) increment the vertical line counter $C02E.C02F
2) check for bottom line of screen for 400 - if so then update $C019 to show vertical blanking on
3) use the colors in the palette that are present before each line starts, to display the line

This sequence should allow a pixel color to be changed as long as it is done before $C02E.C02F reach that line.

> If you want the palette changes to instantly show up, it's much more
> work to implement. I'd like the palettes to be sampled just before line
> 0, and then they are unchangeable for that screen.

This limits the screen to 256 colors per screen instead of 256 colors per line. I hope this isn't too much more to implement as the only real difference is sampling the palettes before each line instead of the beginning of each screen display. Let me know if it becomes too much more to program, more time than you are willing to spend on it. I'm flexible since I don't have the means to do it myself.

> KEGS already supports the VOC to deliver 640x400x2 (2-bit color) (or
> 320x400x4, meaning 4-bit color), and as far as I know, no one's bothered
> to do anything with it yet (which does not surprise me, the software to
> use these things on the IIgs is much harder to write than the code to
> implement it). I could more easily add a new VOC enhanced mode to do
> 320x200x8 (using bank $e0 for the upper 4 bits of the palette index, and
> bank $e1 for the lower 4 bits, using the same palette locations in bank
> $e1 and bank $e0 to give 24-bit color).

The 400 lines of non-interlaced mode are more important to me for font displays and even so for gaming, and the 256 color palette I laid out would be much easier for me to port over a lot of games from the Win 95-98 era that use the 640x480x256 screen. Hopefully I can convince you to put in the extra effort to make it easier for me and I think the extra screen real-estate can make KEGS very desirable as an emulator.

Also, if you put up a donation button somewhere, I would be willing to donate to the cause. There are very few emulators that are able to run on the newer Operating Systems that are coming out. I would like to see you updating KEGS for as long as possible.

Thanks for all you have done. KEGS is a pleasure to play on.

Re: KEGS v1.16 released

<212cb618-cc26-4e7f-8a8a-3efa92d42bcan@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=223&group=comp.emulators.apple2#223

 copy link   Newsgroups: comp.emulators.apple2
X-Received: by 2002:ac8:5c85:0:b0:2e2:3211:92e9 with SMTP id r5-20020ac85c85000000b002e2321192e9mr5270205qta.386.1650224314550;
Sun, 17 Apr 2022 12:38:34 -0700 (PDT)
X-Received: by 2002:a05:6214:2409:b0:432:bf34:362f with SMTP id
fv9-20020a056214240900b00432bf34362fmr5987842qvb.66.1650224314406; Sun, 17
Apr 2022 12:38:34 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.emulators.apple2
Date: Sun, 17 Apr 2022 12:38:34 -0700 (PDT)
In-Reply-To: <ce253d16-c3e6-490e-b764-7b461ccb2fc2n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=207.195.86.254; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 207.195.86.254
References: <QtadnRtdsqX1jnP8nZ2dnUU7-X-dnZ2d@giganews.com>
<sub6ad$8p1$1@dont-email.me> <46904fb0-1981-46ab-be6c-7756b5603affn@googlegroups.com>
<2687da16-2510-4dbe-962b-a905c4c3e6c3n@googlegroups.com> <t09fcu$jak$1@dont-email.me>
<ce253d16-c3e6-490e-b764-7b461ccb2fc2n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <212cb618-cc26-4e7f-8a8a-3efa92d42bcan@googlegroups.com>
Subject: Re: KEGS v1.16 released
From: gids...@sasktel.net (I am Rob)
Injection-Date: Sun, 17 Apr 2022 19:38:34 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 27
 by: I am Rob - Sun, 17 Apr 2022 19:38 UTC

> As for palette sampling. They call it racing the beam. But yes, I think the palettes should be read before each line is scanned to screen. For games that do animation, I think this is a must. It is not necessary to re-read the palette as each pixel is plotted. So the sequence would be:
>
> 1) increment the vertical line counter $C02E.C02F
> 2) check for bottom line of screen for 400 - if so then update $C019 to show vertical blanking on
> 3) use the colors in the palette that are present before each line starts, to display the line
>
> This sequence should allow a pixel color to be changed as long as it is done before $C02E.C02F reach that line.
> > If you want the palette changes to instantly show up, it's much more
> > work to implement. I'd like the palettes to be sampled just before line
> > 0, and then they are unchangeable for that screen.

After some thought, it probably wouldn't need to have a scan line reported in $C02E.C02F or the palette loaded before each line, but each palette should be loaded from each bank before that banks has its 100 lines displayed. Allowing each bank to have a different 256 colors. There would be plenty of time to do whatever one needs to do during the blanking stage if there is no throttling of speed in the memory for graphics display.

Only $C019 would need to be updated to indicate the vertical blanking period. Hope this helps to make it easier.

1
server_pubkey.txt

rocksolid light 0.9.7
clearnet tor