Page 3 of 4

Re: Zeta - a different approach to modern-day ZZT

Posted: Tue Dec 10, 2019 7:08 am
by Nerezza
It's not -perfect- but yes this is much much better! The repeated notes are audible now and sound much better.

The only issue is that now Windows 10 thinks it's a virus and deletes it unless I turn off real time protection, for some reason...

Re: Zeta - a different approach to modern-day ZZT

Posted: Tue Dec 10, 2019 7:40 am
by asie
Nerezza wrote:It's not -perfect-
The grand question is: Do you have opinions on how I could make it more perfect? Note that ZZT doesn't really have an uniform "way it sounds", but maybe your input can lead me to a better solution (or, at the very least, config options) with observations.

EDIT: Beta 21 is now out, with at least that initial take on these audio fixes.

Re: Zeta - a different approach to modern-day ZZT

Posted: Fri Dec 13, 2019 10:25 pm
by Nerezza
I don't have a ton of suggestions since I don't have my 486 anymore, (So I can't check against a real dos machine at the moment) but there is some 'popping' when a lot of notes play in sequence which wasn't how it worked on a real pc speaker from what I remember. You can hear it during the more rapid-fire notes in kaboom.zzt, but not in the slower repeated notes that come later.

But seriously, you've now programmed a pc speaker emulator that works better than the official dos box one, that's something to be proud of. Plus, Evil Sorcerer's Party's campaign song sounds correct now and that's wonderful.

Re: Zeta - a different approach to modern-day ZZT

Posted: Sun Dec 15, 2019 10:56 am
by asie
Nerezza wrote:But seriously, you've now programmed a pc speaker emulator that works better than the official dos box one, that's something to be proud of
Hot take: It's not a PC Speaker emulator, actually! It's very inaccurate when it comes to real PC Speaker code - it's just deliberately tuned to take what ZZT puts into the PC Speaker ports and make something that sounds good *and* faithful at the same time.

Re: Zeta - a different approach to modern-day ZZT

Posted: Sun Jan 26, 2020 3:45 am
by nooBsaIBoT
Hello. I just got around to updating Zeta to the latest version and noticed the audio improvement right away!

I'm having trouble loading the character set and palette file, it just hangs. Is there something I'm doing wrong here or is there an easier way?

Code: Select all

ZetaLoad({
     engine: {
         charset: "ascii.png",
         palette: "vic20.pld"
     },
});

Re: Zeta - a different approach to modern-day ZZT

Posted: Sun Jan 26, 2020 10:46 am
by asie
nooBsaIBoT wrote: I'm having trouble loading the character set and palette file, it just hangs. Is there something I'm doing wrong here or is there an easier way?

Code: Select all

ZetaLoad({
     engine: {
         charset: "ascii.png",
         palette: "vic20.pld"
     },
});
It seems you haven't specified a path to any files - without ZZT or Super ZZT in the virtual filesystem, it has nothing to load, so it just hangs.

Re: Zeta - a different approach to modern-day ZZT

Posted: Sun Jan 26, 2020 5:03 pm
by nooBsaIBoT
Isn't the path set to root? It works with those added lines removed. There must be a syntax error somewhere.. I can't figure it out.

Code: Select all

ZetaLoad({
	render: {
		canvas: document.getElementById("zeta_canvas")
	},
	storage: { // optional - if not present, saves to RAM (lost on page refresh)
		type: "auto", // can also be "localstorage" or "indexeddb"; "auto" is recommended
		database: "test_database"
	},
	path: "./",
	arg: "TENNIS.ZZT", // optional

	engine: {
         	charset: "ascii.png",
         	palette: "vic20.pld"
	},

	files: [
		["zzt.zip", {
			"filenameFilter": function(f) {
				let fl = f.toLowerCase();
				return fl.startsWith("zzt.");
			}
		}],
		"deluxe.zip"
	]
});
Edit: Also just noticed Zeta is crashing completely over at the Museum. Is that happening on your end?

Re: Zeta - a different approach to modern-day ZZT

Posted: Mon Jan 27, 2020 7:29 am
by asie
nooBsaIBoT wrote:Edit: Also just noticed Zeta is crashing completely over at the Museum. Is that happening on your end?
No. But this may happen on some browsers in private mode and/or with localstorage disabled - I'm not sure if I fixed that in the end.

Re: Zeta - a different approach to modern-day ZZT

Posted: Fri Jan 31, 2020 9:18 pm
by nooBsaIBoT
Confirmed. Private mode / localstorage issue.

Dusted off beta 16 and still no luck here with just the charset loaded. Get the following error in my browser console:

Firefox:
TypeError: t is null

Chrome:
Uncaught (in promise) TypeError: Cannot read property 'length' of null
at T.loadCharset (zeta.min.js:19)
at zeta.min.js:19
at Object.Module.onRuntimeInitialized (zeta_native.js:8)
at doRun (zeta_native.js:8)
at run (zeta_native.js:8)
at runCaller (zeta_native.js:8)
at removeRunDependency (zeta_native.js:8)
at receiveInstance (zeta_native.js:8)
at receiveInstantiatedSource (zeta_native.js:8)

Any ideas?

Re: Zeta - a different approach to modern-day ZZT

Posted: Fri Jan 31, 2020 11:47 pm
by asie
nooBsaIBoT wrote:Confirmed. Private mode / localstorage issue. (...) Any ideas?
You could simply disable local storage, for now, I think? I do not give support for older versions of Zeta, sorry.

EDIT: I've fixed it and it will be pushed in beta 23. Sorry for taking so long - this specific bug kept slipping my TODO list. The changes work as follows, right now:
  • If storage.type is set to "auto", an in-memory fallback will be used if the automatically chosen storage method fails to initialize, the same as if storage.type was not set. (I'm considering adding a warning, but I don't have a rendering facility for such yet.)
  • if storage.type is explicitly set to "indexeddb" or "localstorage", failure to initialize the specific method will cause an error message to be displayed.
EDIT 2: It's out as-is, for now.

Re: Zeta - a different approach to modern-day ZZT

Posted: Sun Mar 08, 2020 3:46 pm
by asie
PSA: I will be live-streaming an announcement related to Zeta on Sunday, March 15th at 10PM UTC (3PM Pacific, 6PM Eastern) on my Twitch channel. The stream is scheduled for about 15 minutes. You don't want to miss it.

Re: Zeta - a different approach to modern-day ZZT

Posted: Mon Mar 30, 2020 2:23 pm
by emmzee
I noticed today that "Ctrl+Plus/Minus - resize Zeta window by integer amounts" doesn't work for me in Windows. Is this just a "doesn't work in Windows" thing or am I just unlucky that it just doesn't work for me? (Using latest Zeta version)

Re: Zeta - a different approach to modern-day ZZT

Posted: Mon Apr 06, 2020 3:10 am
by zzo38
Are you going to implement EMS in Zeta, now that some forks of ZZT (such as OpenZoo and FreeZZT) can now use EMS?

Re: Zeta - a different approach to modern-day ZZT

Posted: Tue Jan 04, 2022 3:49 am
by Commodore
Hi asie. I am trying to run zeta on linux but I can not get it to run.

First I could not get it to compile and had to mod the makefile, I don't really think this is the problem though. On first compile I got:

gcc: error: unrecognized command line option ‘-std=gnu18’; did you mean ‘-std=gnu11’?

so I edit the makefile to change the two rules to 'gnu11' and the program compiles. Albeit it throws a warning:

Code: Select all

src/posix_vfs.c:428:13: warning: ‘vfs_check_error’ defined but not used [-Wunused-function]
 static void vfs_check_error(FILE* fptr) {
             ^~~~~~~~~~~~~~~
Then with zzt3.2 in the same dir as the binary (build/unix-sdl) it says 'Could not load ZZT!'

What am I doing wrong?

Re: Zeta - a different approach to modern-day ZZT

Posted: Tue Jan 04, 2022 12:09 pm
by asie
I recommend using the Autoconf method instead. The Makefile is really dodgy and a very "only works on my machine" deal.

As explained in the repo:
./autogen.sh && mkdir build && cd build && ../configure --with-frontend=sdl2 && make
Apologies for the overall roughness - Zeta began as an HTML5-only affair, and I didn't really have good packaging practices in mind when I made it.

As for it not finding ZZT.EXE - it has to be in the current working directory, not in the Zeta directory.