"wall" game for the Lamba 8300 / Power 3000

Software and Games for the Lambda 8300 / Power 3000 Computer
User avatar
mrtinb
Posts: 796
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: "wall" game for the Lamba 8300 / Power 3000

Post by mrtinb » Wed Aug 22, 2018 10:35 pm

Few people have the color module. But Kai from ZX Team has made a schematic of it. So maybe one day a replica is made. It should work both for Lambda 8300 and ZX81.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
mrtinb
Posts: 796
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: "wall" game for the Lamba 8300 / Power 3000

Post by mrtinb » Wed Aug 22, 2018 11:21 pm

The game is MUCH better now. The timing is perfect.

This little video shows the speed.

BEWARE: All the corrupted chars on the screen is not the game's fault.

https://youtu.be/LtdDbik4zxI

(My theory is that ZXpand, which loads the game, has a problem with the Lambda 8300 ULA. Memory from the ZXpand is read and written fine. I assume the ULA has problem reaching it, so it is a timing problem that only occurs with the Lambda ROM. The problem is rarely with ZXpand ROM on Lambda.)
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

olofsen
Posts: 156
Joined: Wed Jan 08, 2014 12:29 pm

Re: "wall" game for the Lamba 8300 / Power 3000

Post by olofsen » Wed Aug 22, 2018 11:31 pm

These extra characters look spectacular :)

olofsen
Posts: 156
Joined: Wed Jan 08, 2014 12:29 pm

Re: "wall" game for the Lamba 8300 / Power 3000

Post by olofsen » Sat Aug 25, 2018 11:24 pm

So here is a little test program for the math functions...

Code: Select all

/* zcc +lambda -O3 -create-app math.c -lmlambda */

#include <stdio.h>
#include <math.h>

unsigned short frames @0x4034;

int main()
{
	int dframes;
	float M_PI2, M_PI4, M_PI6;
	char buf[3];

	dframes = frames;
	
	M_PI2 = M_PI/2;
	M_PI4 = M_PI/4;
	M_PI6 = M_PI/6;

	printf("Running 25 tests...\n");

	printf("%f %f %f\n", asin(1)/M_PI2, acos(0)/M_PI4, atan(1)*2/M_PI6);

	printf("%f %f %f\n", sin(M_PI6)*8, cos(M_PI/6)*10/M_SQRT3, tan(M_PI/6)*6*M_SQRT3);

	printf("%f %f %f\n", 14*sinh(M_PI)/(exp(M_PI)-exp(-M_PI)), 16*cosh(M_PI)/(exp(M_PI)+exp(-M_PI)), 9*tanh(M_PI)*cosh(M_PI)/sinh(M_PI));
	
	printf("%f %f %f %f\n", pow(10,log10(10)), sqrt(121), log(exp(12)), exp(log(13)));

	printf("%f %f\n", fmin(14,15), fmin(16,15));

	printf("%f %f\n", fmax(16,15), fmax(16,17));

	printf("%f %f\n", 18.*(1<2), 19.+(1>2));

	printf("%f %f\n", 20.*(1<=1), 21.*(1>=1));

	printf("%f %f %f\n", floor(22.5), ceil(22.5), fabs(-24));

	ftoa(25.,0,buf);
	printf("%s\n",buf);

	dframes -= frames;
	if (dframes <= 0) dframes += 0x8000;
	
	printf("Done in %d frames.\n", dframes);

	return 0;
}
Attachments
math_lambda1.p
(4.52 KiB) Downloaded 35 times

User avatar
mrtinb
Posts: 796
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: "wall" game for the Lamba 8300 / Power 3000

Post by mrtinb » Sun Aug 26, 2018 8:49 am

Image

My Lambda 8300 says: 1532.

Two times I have experienced that the screen corruption is gone. Luckily this was one of them.

(When the screen is corrupted, bits near other text is influenced. So this result was 3732, because 1 and 5 was corrupted.)
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
mrtinb
Posts: 796
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: "wall" game for the Lamba 8300 / Power 3000

Post by mrtinb » Sun Sep 02, 2018 10:32 pm

Hi again olufson :)

Now I've uploaded the TZXduino firmware to my Arduino with SD/Ethernet-shield, and loaded WALL into my Lambda with a 16K RAMpack.

When the ZXpand is removed, the Lambda works flawless.

Can your patches be applied to z88dk, so versions of DSTAR and CROSS-CHASE can be made for Lambda-version1?

Image
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
mrtinb
Posts: 796
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: "wall" game for the Lamba 8300 / Power 3000

Post by mrtinb » Tue Sep 04, 2018 12:47 am

mrtinb wrote:
Sun Sep 02, 2018 10:32 pm
Can your patches be applied to z88dk, so versions of DSTAR and CROSS-CHASE can be made for Lambda-version1?
Thank you olufson, for Lambda1 versions of DStar and CrossChase. I’ll try them on real hardware tomorrow.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

Fabrizio
Posts: 17
Joined: Sun Aug 19, 2018 11:59 pm

Re: "wall" game for the Lamba 8300 / Power 3000

Post by Fabrizio » Wed Sep 19, 2018 5:15 pm

Was my game (CROSS-CHASE) patched?

What was the issue? I can make a permant fix in my tool-chain so that future releases work on all Lambda versions.

olofsen
Posts: 156
Joined: Wed Jan 08, 2014 12:29 pm

Re: "wall" game for the Lamba 8300 / Power 3000

Post by olofsen » Wed Sep 19, 2018 6:56 pm

Well actually Lambda related z88dk files were patched to match the "old" Lambda ROM. It will be quite hard to make one binary that runs with the old and new ROM (as well as others). Currently the patched z88dk tree is still in a testing phase and "+lambda" now only compiles for the old ROM...

Post Reply