| |
Carrion
Registered: Feb 2009 Posts: 317 |
Exomizer problems on mac os?
Hi to all!
Do you guys encounter strange behaviour of exomizer on mac os (intel)?
I use this command:
./exomizer.exe sfx basic main.prg -s"lda #$01 sta $d021" -o test.prg
causes exomizer to stop with this message:
line 864, syntax error, unexpected STA
Parse failure.
this command:
./exomizer.exe sfx basic main.prg -x "lda #$01 sta $d021" -o test.prg
gives:
line 1290, syntax error, unexpected STA
Parse failure.
Both commands work OK on Windows.
Exomizer compiled on mac os without any warnings or errors. What do I do wrong? or is it mac os version issue?
TIA
[edit]
I get these messages with exo 3.0.2
3.1.1 stops as well but with:
line 1434, syntax error
Parse failure
[edit2]
It's the quotes.... XD
Thanks Trap! |
|
| |
Mr. SID
Registered: Jan 2003 Posts: 424 |
No problems here, and I use it extensively.
Try with -s '...' instead of -s "...", I get errors with " too. |
| |
Silver Dream !
Registered: Nov 2005 Posts: 108 |
silverdr$ exomizer sfx basic smpte.c64 -s"lda #$01 sta $d021" -o test.prg
Reading "smpte.c64", loading from $0801 to $095E.
Crunching from $0800 to $095E.
Phase 1: Instrumenting file
-----------------------------
Length of indata: 350 bytes.
[building.directed.acyclic.graph.building.directed.acyclic.graph.]
Instrumenting file, done.
Phase 2: Calculating encoding
-----------------------------
pass 1: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2325.0 bits ~291 bytes
pass 2: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2323.0 bits ~291 bytes
pass 3: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2322.0 bits ~291 bytes
pass 4: optimizing ..
Calculating encoding, done.
Phase 3: Generating output file
------------------------------
Enc: 0000000000000000,2133,0000002203040420,0010013440010031
Length of crunched data: 319 bytes.
Crunched data reduced 31 bytes (8.86%)
Literal sequences are not used, length 1 sequences are used,
length 123 mirrors are not used, max length used is 5 and
the safety offset is 3.
Target is self-decrunching C64 executable,
basic start ($0801-$095E).
line 866, syntax error, unexpected IF
Parse failure.
but when used with single quotes:
silverdr$ exomizer sfx basic smpte.c64 -s'lda #$01 sta $d021' -o test.prg
Reading "smpte.c64", loading from $0801 to $095E.
Crunching from $0800 to $095E.
Phase 1: Instrumenting file
-----------------------------
Length of indata: 350 bytes.
[building.directed.acyclic.graph.building.directed.acyclic.graph.]
Instrumenting file, done.
Phase 2: Calculating encoding
-----------------------------
pass 1: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2325.0 bits ~291 bytes
pass 2: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2323.0 bits ~291 bytes
pass 3: optimizing ..
[finding.shortest.path.finding.shortest.path.finding.shortest.pat]
size 2322.0 bits ~291 bytes
pass 4: optimizing ..
Calculating encoding, done.
Phase 3: Generating output file
------------------------------
Enc: 0000000000000000,2133,0000002203040420,0010013440010031
Length of crunched data: 319 bytes.
Crunched data reduced 31 bytes (8.86%)
Literal sequences are not used, length 1 sequences are used,
length 123 mirrors are not used, max length used is 5 and
the safety offset is 3.
Target is self-decrunching C64 executable,
basic start ($0801-$095E).
Writing "test.prg" as prg, saving from $0801 to $0A53.
Memory layout: |Start |End |
Crunched data | $07E7| $0925|
Decrunched data | $0800| $095E|
Decrunch table | $0334| $03D0|
Decruncher | $00FD| $01A2| and $9F,$A7,$9E,$AE,$AF
Decrunch effect writes to $DBE7.
Decruncher: |Enter |During|Exit |
RAM config | $37| $37| $37|
IRQ enabled | 1| 1| 1|
silverdr$
|
| |
Carrion
Registered: Feb 2009 Posts: 317 |
yeah.
thanks guys for reply.
Trap sugested mi quotes in an email and I edited the first post right away. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Problem solved, now for some off-topicness:
Why Exomizer in the first place? :)
One of my many pet peeves is needlessly slow decrunch, and Exomizer should only be used if you really need the size.
That basically only goes for cracks, where minimum size earns a flower pot.
(For 4K demos and the like, even slower crunchers exist, but for a good reason.)
There are many other crunchers for self-extracting executables with shorter load-to-run times, despite slightly higher block count. |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
What cruncher would be optimal (generally speaking) if total loading+decrunch time is the issue, and if a standard action replay cartridge is used to load the crunched program? |
| |
Silver Dream !
Registered: Nov 2005 Posts: 108 |
Well, size is the one thing you mentioned. In my case it's also stream decrunching that I use it for when needed.. Other than that - since I began to use DolphinDOS in 1986, I found the load 2s + decrunch 10+ seconds also pretty annoying when compared to load uncrunched in some 3-4s ;-) |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
It's standalone, supports all platforms, has all the options you'll ever need, and it just works out of the box.
Yes it's slow, but it's convenient and we're lazy. Feel free to release something that's even more convenient :) |
| |
Carrion
Registered: Feb 2009 Posts: 317 |
Quote: Problem solved, now for some off-topicness:
Why Exomizer in the first place? :)
One of my many pet peeves is needlessly slow decrunch, and Exomizer should only be used if you really need the size.
That basically only goes for cracks, where minimum size earns a flower pot.
(For 4K demos and the like, even slower crunchers exist, but for a good reason.)
There are many other crunchers for self-extracting executables with shorter load-to-run times, despite slightly higher block count.
@Krill
the size is key factor in my game. With my "coding skills" there was not much memory left. all three part (intro, main game, end) after unpacking the intro take 0801-ffff. levels inside the game are BB2 packed though. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Quoting FranticWhat cruncher would be optimal (generally speaking) if total loading+decrunch time is the issue, and if a standard action replay cartridge is used to load the crunched program? Before settling on Exomizer for a given program, i'd recommend trying TinyCrunch V1.2 (extremely fast decrunch, but limited crunchiness) and https://github.com/bboxy/bitfire/tree/master/packer/zx0 (as crunchy as Exomizer on average, but a lot faster decrunch). |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Quoting Carrion@Krill
the size is key factor in my game. With my "coding skills" there was not much memory left. all three part (intro, main game, end) after unpacking the intro take 0801-ffff. levels inside the game are BB2 packed though. Ah, interesting! :)
Then you're always scratching the $0801-$d000 border even with Exomizer, i take it? (ZX0 might still be worth a try.)
When the game comes in three files (and 1541/71 compatibility is all you care for), perhaps try Transwarp on it. Gives you encryption of the end part for free, you only need to bury the key well. ;) (And of course this might delay the inevitable cracks by... anything within 5 to 50 hours? =D) |
| |
iAN CooG
Registered: May 2002 Posts: 3193 |
Interesting, I didn't know zx0 was now able to make c64 sfx programs. As of now I think it was only used for the loader in Vinyl Tribute #2 unless there are other demos where Bitbreaker isn't credited for the loader.
Can anyone build zx0.exe for win32/win64? I don't seem to have all tools required in the makefile from the bitfire 1.0 repo. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Quoting iAN CooGInteresting, I didn't know zx0 was now able to make c64 sfx programs. As of now I think it was only used for the loader in Vinyl Tribute #2 unless there are other demos where Bitbreaker isn't credited for the loader.
Can anyone build zx0.exe for win32/win64? I don't seem to have all tools required in the makefile from the bitfire 1.0 repo. I've used the ZX0 SFX option for a game on the Transwarp showcase images.
But let's not confuse decrunch-loading ZX0-packed files with having an executable packed with ZX0. :)
That said, the SFX portion still needs a bit of love, Exomizer is more mature in that regard.
Anyways, the tools you need are standard *NIX tools like grep, sed and hexdump. These should also work in a Windows incarnation (from mingw et al.). |
| |
Claus_2015
Registered: Oct 2012 Posts: 53 |
Regarding the macOS issue: make sure to disable "Use smart quotes and dashes" in System Preferences -> Keyboard -> Text. Otherwise, macOS will happily convert your quotes in the shell to start and end quotes, which will confuse most commandline tools. |
| |
Carrion
Registered: Feb 2009 Posts: 317 |
@Claus
Yeah that's mega annoying. I disabled it already as it made using the Vice monitor impossible. ;) |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: @Claus
Yeah that's mega annoying. I disabled it already as it made using the Vice monitor impossible. ;)
same here, made me ditch the internal monitor and now always use an external. :D |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
Quoting KrillThat said, the SFX portion still needs a bit of love, Exomizer is more mature in that regard.
feature requests/suggestions welcome, so just let me know what i can improve :-) Meanwhile there's also salvador that outputs zx0 format, but crunches as good as the slow zx0 crunching, but as fast as with the quick mode. As i made some slight changes on the zx0-encoding to make it suit better for the 6502, i need to adopt/fork from the original though or think about a reencoder that also includes all the c64 features needed. |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
What is salvador? |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
https://github.com/emmanuel-marty/salvador |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:make sure to disable "Use smart quotes and dashes" in System Preferences -> Keyboard -> Text. Otherwise, macOS will happily convert your quotes in the shell to start and end quotes, which will confuse most commandline tools.
jesus |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quoting GroepazQuote:make sure to disable "Use smart quotes and dashes" in System Preferences -> Keyboard -> Text. Otherwise, macOS will happily convert your quotes in the shell to start and end quotes, which will confuse most commandline tools.
jesus
Yeah, no, Terminal does not convert to smart quotes — it would cause mayhem if it did that. Other apps do though, like TextEdit.app. And of course if you paste smart quotes they are preserved. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
That makes slightly more sense :) |
| |
Claus_2015
Registered: Oct 2012 Posts: 53 |
Ah indeed, I thought it would happen even in the shell. Turns out I stumbled across it when writing Vice command files and shell scripts in an editor. Still I think it is a good idea to turn it off. |
| |
Mr. SID
Registered: Jan 2003 Posts: 424 |
You need to use a better editor… |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: Quoting GroepazQuote:make sure to disable "Use smart quotes and dashes" in System Preferences -> Keyboard -> Text. Otherwise, macOS will happily convert your quotes in the shell to start and end quotes, which will confuse most commandline tools.
jesus
Yeah, no, Terminal does not convert to smart quotes — it would cause mayhem if it did that. Other apps do though, like TextEdit.app. And of course if you paste smart quotes they are preserved.
Also the VICE monitor does it (at least used to) which is highly annoying. :) I'm sure just sending a hint to the widget will disable that insane behaviour. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Yeah sadly apps have to opt out of smart quotes, instead of making it opt in.
https://developer.apple.com/documentation/appkit/nstextview#//a.. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Quoting MagerValpYeah sadly apps have to opt out of smart quotes, instead of making it opt in. Seems quite sensible, tbh. Most users use to type in stuff that needs to look pretty, not be interpreted by a machine. That said, do they fix ghastly not-quite-apostrophe´s? |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
Dali V0.1
Just in case you want to try salvador on c64, wrote a wrapper with a bunch of features to make proper use of it on 6502/c64. |