Re: Elite port

2003-01-13 Thread Frode Tenneboe
On Sun, 12 Jan 2003 10:48:31 + Stuart Brady [EMAIL PROTECTED] wrote:
 On Sun, Jan 12, 2003 at 01:46:52AM +0100, Thomas Harte wrote:
 
 
 Somebody was showing me this at uni a while back, and my immediate
 thought was hmm, this would make a SAM port a lot easier. I would need
 to read up on graphics before I could make a start on this though. I
 presume that there are no legal issues to worry about?

I was actually in touch with both Ian Bell and David Braben (or
rather his holdings) about doing such an conversion as early as 1993/4
(I think). Ian Bell was very forthcomming and I was told he would
look into it. I then got an answer that it was not possible du to
legal stuff. I also contacted David Braben and got a flat no.

 -Frode



Re: Elite port

2003-01-13 Thread Frode Tenneboe
On Sun, 12 Jan 2003 12:35:40 - David [EMAIL PROTECTED] wrote:
 It was apparently the Amstrad packaging - and if memory serves me right, Bob
 managed to sort some sort of deal out in regards to buying lots of Amstrad
 boxed disc versions - in return for the license of a SAM version and
 giving him loads of 3 disks to sell as well!

I was wondering how he did manage to pull that one off.

 The game was a rather straight forward hack of the Spectrum version - I
 recall meeting the programmer of the conversion at a NSSS - and he wasnt too
 pleased with the price Bob was charging for his work If I recall (and
 no, i didnt ask how much he was paid for his services!)

Incidentally, does anybody have the SAM version? Seeing that Ian
Bell has published the other versions, the SAM version can't
be that much different copyright-wise? Or does anybody object?

  Somebody was showing me this at uni a while back, and my immediate
  thought was hmm, this would make a SAM port a lot easier. I would need
  to read up on graphics before I could make a start on this though. I
  presume that there are no legal issues to worry about?
 
 I think Ian is a bit paranoid about his work David B may be easier to
 agree - unless someone wanted to do a Bob deal with them :)

Actaully, it's the other way around (in my experience).

 -Frode


--
^ Frode Tennebø   | email: [EMAIL PROTECTED]  ^
| Ericsson AS.| Isebakkeveien 49   |
| N-1788 Halden   | Phone: +47 67 25 09 39 |
| with Standard.Disclaimer; use Standard.Disclaimer;   |


RE: Elite port

2003-01-13 Thread Adrian Brown
 I think Ian is a bit paranoid about his work David B may be easier to
 agree - unless someone wanted to do a Bob deal with them :)

Actaully, it's the other way around (in my experience).

Yup its definately the other way around if you ask me. (although not as bad
as Geoff Crammond)

A.



Re: Elite port

2003-01-13 Thread Stephen Longhurst
From: Frode Tenneboe [EMAIL PROTECTED]
Subject: Re: Elite port
 Incidentally, does anybody have the SAM version? Seeing that Ian
 Bell has published the other versions, the SAM version can't
 be that much different copyright-wise? Or does anybody object?

I have a boxed copy at home somewhere, but I've not looked at it for years.
I was a bit dissapointed when I bought it to find it was identical to the
Speccy version, which I'd spend months playing on my Sam anyway using Lerm's
Samtape 3 with it's excellent snapshot function for saving.

Cheers,

Steve



RE: Re: Elite port

2003-01-13 Thread Thomas Harte
 From : Andrew Collier [EMAIL PROTECTED]
 Date : Sun, 12 Jan 2003 17:01:15 +
I don't quite see what you're getting at with your descriptions above...

However, the way I see it; every byte that you clear costs time. The 
ideal situation is when you're only clearing bytes which were used in 
the previous frame and were unused in the current frame. If you clear a 
block of 16x16 pixels, that's likely to be a lot of bytes which were 
never filled and so didn't need to be blacked out.

The idea was probably rubbish anyway. Would it instead be smart to use a 
faintly dirty 
rectange approach, but to continually draw to the same buffer using simple 
palette 
effects to advance the frame (so you can get through 15 frames before you have 
to 
change buffers, allowing for the need for a constant black entry), and clear 
1/15th of 
the next buffer every scanline? With a 48 pixel status display - a quick 
estimation on my 
part without having a screenshot to hand - thats the equivalent of clearing 
only 9.6 
scanlines per frame. 

From: Frode Tenneboe [EMAIL PROTECTED]
Subject: Re: Elite port
 Incidentally, does anybody have the SAM version?

I do. And also I have a deprotected .dsk version of it, provided by someone on 
this list 
some time ago. Perhaps Ian Bell doesn't offer it because its just a way of 
running the 
Spectrum version with much fewer available emulators?

-Thomas

When words aren't enough - Vodafone live! A new world of colour, sounds, 
picture messages and information on your mobile. a 
href=http://ad.doubleclick.net/clk;4909903;7724245;q?http://www.vodafone.co.uk/live;
Click here/a to find out more.



Re[2]: Elite port

2003-01-13 Thread Frode Tenneboe
On Mon, 13 Jan 2003 13:58:42 +0100 Thomas Harte [EMAIL PROTECTED] wrote:
 The idea was probably rubbish anyway. Would it instead be smart to use a 
 faintly dirty 
 rectange approach, but to continually draw to the same buffer using simple 
 palette 
 effects to advance the frame (so you can get through 15 frames before you 
 have to 
 change buffers, allowing for the need for a constant black entry), and clear 
 1/15th of 
 the next buffer every scanline? With a 48 pixel status display - a quick 
 estimation on my 
 part without having a screenshot to hand - thats the equivalent of clearing 
 only 9.6 
 scanlines per frame.

Another solution would be to store the previous sequence of screen
addresses used for the wire-frame and do a quick

LD (stack+1),SP
LD SP,nn
POP BC
loopPOP HL
LD (HL),A
DJNZ loop
stack   LD SP,nn

(or something more elboate if B256 - from the top of my head)

 From: Frode Tenneboe [EMAIL PROTECTED]
  Incidentally, does anybody have the SAM version?
 
 I do. And also I have a deprotected .dsk version of it, provided by someone 
 on this list 
 some time ago. Perhaps Ian Bell doesn't offer it because its just a way of 
 running the 
 Spectrum version with much fewer available emulators?

Well, with save/load to disk instead of tape (even though there
were (?) +D/Disciple hacks) is a plus, eh?

My guess is that he doesn't even know.

 -Frode


--
^ Frode Tennebø   | email: [EMAIL PROTECTED]  ^
| Ericsson AS.| Isebakkeveien 49   |
| N-1788 Halden   | Phone: +47 67 25 09 39 |
| with Standard.Disclaimer; use Standard.Disclaimer;   |


Elite port

2003-01-12 Thread Stuart Brady
On Sun, Jan 12, 2003 at 01:46:52AM +0100, Thomas Harte wrote:

 By the way, with respect to Elite, I once partially reverse engineered the ZX 
 Spectrum 
 version, which is visibly identical to the SAM version implying that all that 
 is running is the 
 Spectrum code and a mode 1 screen. In which case we are seeing the following 
 abuses 
 of the SAM hardware :

Did they use exactly the same file on the disk, just adding a BASIC
program to switch into mode 1? If so, the SAM 'version' couldn't have
taken longer than 5-10 minutes work, surely! This begs the question; how
much did each version cost?

 - mode 1 display, with obvious effects on running speed

Presumably a good deal of work would be needed to slow the game back
down to its original speed, after the framerate had been increased?

 - software double buffering, even though in the SAM (and 128kb Spectrum, I 
 believe) 
 this can be achieved in hardware

Yes, the SAM and Spectrum 128k do provide page flipping. If I remember
correctly, you are limited to just two pages on the Spectrum 128k, but
but on the SAM, any page in main memory may be used. I've not actually
tried using page 31 in modes 3 and 4 yet, but I expect that this uses
page 0 for the upper 8k of the video memory.

I also wonder whether the extra memory would be of particular benefit.

 If someone is planning on writing a new implementation of Elite for the SAM, 
 then it might 
 be worth noting that the original BBC Micro 6502 source has been released by 
 Ian Bell 
 but is nearly illegible. It has subsequently been converted into C using the 
 Allegro 
 graphics library by Christian Pinder, the source for which is available via 
 http://www.newkind.co.uk (see Elite : The New Kind, rather than the other). I 
 contributed the anti-aliased drawing routines, and a few other modifications 
 regarding 
 subpixel accuracy for that purpose!

Somebody was showing me this at uni a while back, and my immediate
thought was hmm, this would make a SAM port a lot easier. I would need
to read up on graphics before I could make a start on this though. I
presume that there are no legal issues to worry about?

Thanks,
-- 
Stuart Brady


Re: Elite port

2003-01-12 Thread Robert van der Veeke

- Original Message - 
From: Stuart Brady [EMAIL PROTECTED]
To: sam-users@nvg.ntnu.no
Sent: Sunday, January 12, 2003 11:48 AM
Subject: Elite port

 Somebody was showing me this at uni a while back, and my immediate
 thought was hmm, this would make a SAM port a lot easier. I would need
 to read up on graphics before I could make a start on this though. I
 presume that there are no legal issues to worry about?

Yes there are when it comes to Elite, Breadbin is the culprit in this case.

Take a look here
http://www.iancgbell.clara.net/elite/palm/index.htm

And here
http://www.harbaum.org/till/palm/elite/index.html

It looks to me that Braben is a clone of Brenchley or vice versa

BTW: Best wishes for 2003

Robert van der Veeke
Currently listening to: Battle Royale - OST

Over the centuries, mankind has tried many 
ways of combating the forces of evil...prayer,
fasting, good works and so on. 
Up until Doom, no one seemed to have 
thought about the double-barrel shotgun. 
Eat leaden death, demon...
-- Terry Pratchett in alt.fan.pratchett --


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.443 / Virus Database: 248 - Release Date: 10-1-2003



Re: Elite port

2003-01-12 Thread David

- Original Message -
From: Stuart Brady [EMAIL PROTECTED]
To: sam-users@nvg.ntnu.no
Sent: Sunday, January 12, 2003 10:48 AM
Subject: Elite port



 Did they use exactly the same file on the disk, just adding a BASIC
 program to switch into mode 1? If so, the SAM 'version' couldn't have
 taken longer than 5-10 minutes work, surely! This begs the question; how
 much did each version cost?

It was apparently the Amstrad packaging - and if memory serves me right, Bob
managed to sort some sort of deal out in regards to buying lots of Amstrad
boxed disc versions - in return for the license of a SAM version and
giving him loads of 3 disks to sell as well!

The game was a rather straight forward hack of the Spectrum version - I
recall meeting the programmer of the conversion at a NSSS - and he wasnt too
pleased with the price Bob was charging for his work If I recall (and
no, i didnt ask how much he was paid for his services!)

  - mode 1 display, with obvious effects on running speed

 Presumably a good deal of work would be needed to slow the game back
 down to its original speed, after the framerate had been increased?

Mode 1 is slowed down by default - to improve Spectrum compatibility  in
border display time, I believe the speed is a little better - so I suppose
its down to how the code is syncronised.

 Somebody was showing me this at uni a while back, and my immediate
 thought was hmm, this would make a SAM port a lot easier. I would need
 to read up on graphics before I could make a start on this though. I
 presume that there are no legal issues to worry about?

I think Ian is a bit paranoid about his work David B may be easier to
agree - unless someone wanted to do a Bob deal with them :)

But perhaps as a free project? Who knows.

David (Just Visting) L



Re: Elite port

2003-01-12 Thread Andrew Collier

On Sunday, January 12, 2003, at 10:48  am, Stuart Brady wrote:

On Sun, Jan 12, 2003 at 01:46:52AM +0100, Thomas Harte wrote:



Did they use exactly the same file on the disk, just adding a BASIC
program to switch into mode 1? If so, the SAM 'version' couldn't have
taken longer than 5-10 minutes work, surely!


I think they also hacked the load/save routines so that they used Sam 
disks instead of the tape. 7-12 minutes then.



This begs the question; how
much did each version cost?


More than the Spectrum version ever did! (About 15 pounds, if I 
remember correctly).



- mode 1 display, with obvious effects on running speed


Presumably a good deal of work would be needed to slow the game back
down to its original speed, after the framerate had been increased?


As far as I know, they didn't bother. Although, because of RAM 
contention, the running speed of the Sam in Mode 1 is not all that 
faster than the Spectrum.


- software double buffering, even though in the SAM (and 128kb 
Spectrum, I believe)

this can be achieved in hardware


Yes, the SAM and Spectrum 128k do provide page flipping. If I remember
correctly, you are limited to just two pages on the Spectrum 128k, but
but on the SAM, any page in main memory may be used. I've not actually
tried using page 31 in modes 3 and 4 yet, but I expect that this uses
page 0 for the upper 8k of the video memory.


A mode 3 or 4 screen always starts on an even numbered page. If you 
output 31 (and mode bits) to the VMPR than you'll get a screen starting 
at page 30.



I also wonder whether the extra memory would be of particular benefit.


Yes, at least if you're drawing in Mode 4. Do you remember a demo 
called DWC (Dead Wild Cat) by Marc Broster on Fred 50? It drew rotating 
3D wireframe objects and usually kept up to 50 fps. He used most of the 
Sam's memory to hold pre-calculated line drawing routines.


Andrew

--
 ---   Andrew Collier 
   http://www.intensity.org.uk/ ---
  --
r2+ T4* cSEL dMS hEn/CBBL A4 S+*++ C$++L/mP W- a-- Vh+seT+ (Cantab) 
1.1.4




Re: Elite port

2003-01-12 Thread Stuart Brady
On Sun, Jan 12, 2003 at 12:35:40PM -, David wrote:
 
  Somebody was showing me this at uni a while back, and my immediate
  thought was hmm, this would make a SAM port a lot easier. I would need
  to read up on graphics before I could make a start on this though. I
  presume that there are no legal issues to worry about?
 
 I think Ian is a bit paranoid about his work David B may be easier to
 agree - unless someone wanted to do a Bob deal with them :)
 
 But perhaps as a free project? Who knows.

Well obviously for free! I wasn't suggesting otherwise!
-- 
Stuart Brady


Re: Elite port

2003-01-12 Thread Stuart Brady
On Sun, Jan 12, 2003 at 12:39:29PM +, Andrew Collier wrote:
 On Sunday, January 12, 2003, at 10:48  am, Stuart Brady wrote:

 Presumably a good deal of work would be needed to slow the game back
 down to its original speed, after the framerate had been increased?
 
 As far as I know, they didn't bother. Although, because of RAM 
 contention, the running speed of the Sam in Mode 1 is not all that 
 faster than the Spectrum.

I wan't clear - I meant to refer to the speedup that would have been
obtained had they decided to use Mode 2 instead of Mode 1.

 Yes, the SAM and Spectrum 128k do provide page flipping. If I remember
 correctly, you are limited to just two pages on the Spectrum 128k, but
 but on the SAM, any page in main memory may be used. I've not actually
 tried using page 31 in modes 3 and 4 yet, but I expect that this uses
 page 0 for the upper 8k of the video memory.
 
 A mode 3 or 4 screen always starts on an even numbered page. If you 
 output 31 (and mode bits) to the VMPR than you'll get a screen starting 
 at page 30.

Ouch. If bit 6 of the VMPR is set, bit 0 is taken as 0? I see now that
Version 3.0 of the tech manual makes note of this, but it's not quite as
clear as it could have been. Thanks for telling me.

 I also wonder whether the extra memory would be of particular benefit.
 
 Yes, at least if you're drawing in Mode 4. Do you remember a demo 
 called DWC (Dead Wild Cat) by Marc Broster on Fred 50? It drew rotating 
 3D wireframe objects and usually kept up to 50 fps. He used most of the 
 Sam's memory to hold pre-calculated line drawing routines.

I will certainly take a look at this some time soon. Thanks.
-- 
Stuart Brady


RE: Re: Elite port

2003-01-12 Thread Thomas Harte
 I also wonder whether the extra memory would be of particular benefit.

Yes, at least if you're drawing in Mode 4. Do you remember a demo
called DWC (Dead Wild Cat) by Marc Broster on Fred 50? It drew rotating
3D wireframe objects and usually kept up to 50 fps. He used most of the
Sam's memory to hold pre-calculated line drawing routines.

You mean, if he had been able to go to extremes, having 256*192 * 256*192 
routines, one for each possible [clipped] slope and position of line?

Anyway, one of the benefits of an Elite type game is that the trig table 
requirements are miniscule - when I wrote a clone of the Elite engine (slightly 
cheekily, since it was after I'd played with the Elite:TNK source) for the 
Atari Lynx (4Mhz 6502, but with a coprocessor offering hardware multiply and 
divide, and another offering line drawing and display clearing and so on) I got 
away with only storing trig for +/- 5 degrees or so. But that was using 
orthonomal basis' (bases?) to retain orientation information - you'd obviously 
have a much rougher time with quaternions. Not that I reckon they'd be a good 
choice - you'd gain on compositions but lose massively on frame rendering.

I always thought a good way to attack a vector renderer on the SAM Coupé would 
be to stick in black and white, but to take advantage of the 16 colour palette 
and the scanline interrupts to clear 1/16ths of scanlines which are not reused 
very cheaply. Or possibly to clear 16x16 blocks of pixels, depending on how 
much you want to expend on interrupt palette things. Otherwise, it always 
strikes me that clearing the display costs almost as much as drawing it in the 
first place which is a stupid situation to be in.

Or perhaps I am too fanciful?

-Thomas

When words aren't enough - Vodafone live! A new world of colour, sounds, 
picture messages and information on your mobile. a 
href=http://ad.doubleclick.net/clk;4909903;7724245;q?http://www.vodafone.co.uk/live;
Click here/a to find out more.



Re: Elite port

2003-01-12 Thread Andrew Collier


On Sunday, January 12, 2003, at 04:27  pm, Thomas Harte wrote:

I also wonder whether the extra memory would be of particular 
benefit.


Yes, at least if you're drawing in Mode 4. Do you remember a demo
called DWC (Dead Wild Cat) by Marc Broster on Fred 50? It drew 
rotating
3D wireframe objects and usually kept up to 50 fps. He used most of 
the

Sam's memory to hold pre-calculated line drawing routines.


You mean, if he had been able to go to extremes, having 256*192 * 
256*192 routines, one for each possible [clipped] slope and position 
of line?


Well, I haven't examined it, but if I were doing the same thing, I 
wouldn't use quite that many routines (it would take just over two 
gigabytes of RAM just for the single-byte RET instruction at the end of 
each routine...).


We can assume one register-pair (say, HL for the sake of argument) will 
be set up with the address of x1,y1 when the routine is called. From 
there you only need 512x384 routines to draw to any possible position 
on the screen. If you have the option of swapping the start and end 
points such that y1 = y2, you can halve the number of routines to 
512x192. But you'd have to double it again to cope with the line 
starting in the left or right half of a byte. If you assume that lines 
will never exceed a certain length, you can reduce the number of 
routines even further. You could split long lines into shorter 
sections, and call the routine for the shorter section instead of 
repeating a lot of the code.


Actually that's still potentially quite a lot of routines. Maybe he 
filled memory with math-tables to optimise one routine... Anyway, my 
point was that for Sam graphics programming, in general the more memory 
you're prepared to use, the faster your code can get (this isn't 
necessarily true any more on modern CPUs, because in many similar 
situations you're more limited by cache size and bus bandwidth than by 
raw processing power. The cost of looking up a result often now 
outweighs the benefit of not calculating it).


I always thought a good way to attack a vector renderer on the SAM 
Coupé would be to stick in black and white, but to take advantage of 
the 16 colour palette and the scanline interrupts to clear 1/16ths of 
scanlines which are not reused very cheaply. Or possibly to clear 
16x16 blocks of pixels, depending on how much you want to expend on 
interrupt palette things. Otherwise, it always strikes me that 
clearing the display costs almost as much as drawing it in the first 
place which is a stupid situation to be in.


I don't quite see what you're getting at with your descriptions above...

However, the way I see it; every byte that you clear costs time. The 
ideal situation is when you're only clearing bytes which were used in 
the previous frame and were unused in the current frame. If you clear a 
block of 16x16 pixels, that's likely to be a lot of bytes which were 
never filled and so didn't need to be blacked out.


Andrew

--
 ---   Andrew Collier 
   http://www.intensity.org.uk/ ---
  --
r2+ T4* cSEL dMS hEn/CBBL A4 S+*++ C$++L/mP W- a-- Vh+seT+ (Cantab) 
1.1.4