Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add -z switch (no initial window references) to encoder #90

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ecm-pushbx
Copy link

As discussed on the SvarDOS issue tracker, refer to: SvarDOS/bugz#127 (comment)

Particular the store zeros calls concern me because they may impose complications on the depacker, if it doesn't use a circular buffer. I may look into adding a mode to heatshrink that forbids references that point before the depacked data.

For example, the lDOS inicomp depacker for heatshrink does some special handling to store zeros. This code can be dropped if the encoder's new -z switch is used:
https://hg.pushbx.org/ecm/inicomp/file/f5f72d7078a2/heatshr.asm#l443

As discussed on the SvarDOS issue tracker, refer to:
SvarDOS/bugz#127 (comment)

> Particular the store zeros calls concern me because they
> may impose complications on the depacker, if it doesn't
> use a circular buffer. I may look into adding a mode to
> heatshrink that forbids references that point before the
> depacked data.

For example, the lDOS inicomp depacker for heatshrink does some
special handling to store zeros. This code can be dropped if the
encoder's new -z switch is used:
https://hg.pushbx.org/ecm/inicomp/file/f5f72d7078a2/heatshr.asm#l443
@ecm-pushbx
Copy link
Author

I previously discussed my 8086 depackers in #82

@ecm-pushbx
Copy link
Author

I updated both the inicomp executable depacker and the lDebug help page depacker to make use of an optional define known as _Z. With this set, the zero storing special handling is excluded. I also updated the lDebug and kernwrap mak.sh scripts to detect and make use of the Z mode, passing -z to the encoder.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant