Jump to content
IGNORED

Has anyone tried to create a game/demo that explores the 7800's 3D capabilities?


Leeroy ST

Recommended Posts

I think the best way to develope a file/paper on 3D programming for the 7800, is to gather knowledge from vector programming and diligently analysing the code for Motor Psycho, research how vectors can be successfully filled and be scaled, zoomed, and moved-in-perspective/3D.

 

Just my opinion.

Edited by Giles N
Link to comment
Share on other sites

1 hour ago, Giles N said:

Hope this may be of help:

6416957B-3796-4DBB-9E9B-D99C12324C8E.jpeg

I checked the links to this ‘paper’ and it seems highly dubious/suspicious.

 

Trying to access its original PDF only led me to scam ‘n spam sites.

 

Sorry for posting this.

 

I don’t know if the poster makes sense.

 

But its sources seems to be utterly corrupt.

 

Again, sorry for posting this.

Link to comment
Share on other sites

To me that poster looks like it was put together by somebody who had flicked through the 7800basic documentation and never used it or actually understood it.

 

The abstract lists the limitations of 48k ROM and 4k RAM. It's true the 7800 can address 48k through the cartridge port, and the stock system has 4k RAM, but that 48k can be anything including extra RAM and bankswitching removes any real space limitations.

This looks like it was copied from the 7800 Wikipedia summary as 7800basic has supported the 128k+RAM format for as long as I can remember (not forgetting all of the original releases that used it).

 

The images are grabbed from the 7800basic samples and seem to just be used to fill space. There is no context for why the ATASCII characterset has been included because it's not relevant to the subject at hand.

 

The worst part for me is the complete ignorance about the 7800's major strength; "7800basic displays images only through 8*8 pixel sprites".

Technically the 7800 doesn't have sprites, but I can overlook the use of common terminology to get the message across, however the 7800 (and 7800basic) display objects 32 bytes wide and one zone high, which in the most common configuration is 128*16.

 

If this paper is actually real then it can't be trusted anyway with such blatant errors on the first page.

I think it's safe for me to say that I've done more with 3D on the 7800 than those 3, having written a voxel heightmap renderer for the title screen of Spire of the Ancients, and having set up a bitmap where I can adjust arbitrary pixels in the title screen for Plink.

  • Like 6
Link to comment
Share on other sites

I agree with @SmittyB, I'm far from an expert but this seems like nonsense to me and lots of things are plain wrong. Even BiTD there were 128k ROM + RAM carts.

 

Usually I'd expect a "paper" to be dated (as in date of publication or date of writing), at least that's my experience in papers I've written and read in an academic context. That may explain some of the clear inaccuracies if it was written before those features were available in 7800Basic for example. Also I'd suggest this is an old "paper" and I use that in the most generous interpretation of "paper" as it refers to 7800Basic being a new and unpolished language. Well 7800Basic isn't new as far as I know, it's like 6 or 7 years old and I'd also refute that it's unpolished (or was ever considered unpolished by it's users). I also wouldn't expect a serious paper to be dotted in sprites that are not contextual illustrations.

 

Anyway, interesting to read but I think the only accurate thing on that paper is that the 7800 chips called Sally & Maria and it has 4kb of ram! :D

4 hours ago, Giles N said:

Again, sorry for posting this.

No harm in posting it Giles, it's interesting even if it's basically wrong.

  • Like 4
Link to comment
Share on other sites

13 hours ago, Giles N said:

Trying to access its original PDF only led me to scam ‘n spam sites.

Proper link to the PDF from the server: https://www.andrew.cmu.edu/user/rfernau/3D_Graphics_Atari_7800.pdf

 

The college and people, such as Joey Fernau, are real.  It doesn't make the paper any closer to accurate though.

 

For what started as a college assignment and demonstrates a thorough understanding of the hardware, see the beginnings of what become the MiSTer FPGA port of the 7800, back in the Fall of 2015:

 

GitHub: https://github.com/545/Atari7800

Paper: https://web.archive.org/web/20180205073500/http://ece545.com:80/F16/reports/F15_Atari7800.pdf

 

The above information was refined and reworked to ultimately bring us Atari7800 MiSTer - a VERY thorough understanding of the hardware - which is near perfection.  As the thanks section clearly denotes: "Mark Saarna for his enormous knowledge of the system and patient help."  That's @RevEng

 

It cannot be overstated how much he has done for the community, specifically focused in the context of this mention, the 7800 platform.  Whether it is the huge leap towards accuracy under software emulation via A7800, assisting with hardware simulation via MiSTer, the programming language 7800basic, the 7800 8BitDev.org website, among a plethora of other items and achievements, including programmed and co-programmed, some of the best homebrew games and demos for the platform, coupled with his wonderful disposition, helpfulness, and insight, he's truly invaluable.

 

Enormous thanks to the unquestionably brilliant @Kitrinx too.  It was her excellence and determination for accuracy which took the fine foundation mentioned above and built a masterpiece.  It was her incredible coding in part that delivered such an amazing recreation of the console that led me to acquire, and cannot recommend enough to everyone, a MiSTer setup.  It is absolutely wonderful that all the code and more information are available to the masses.

 

GitHub: https://github.com/Kitrinx/Atari7800_MiSTer

 

For a 3D demo - check 1E78 - it contains several 'mini' ones; it's also contained in the PROPack:

 

 

  • Like 6
  • Thanks 2
Link to comment
Share on other sites

@Trebor

Very nice and impressive 3D demo indeed.

 

But how to:

a) implement such elements in games which needs cpu-power for running everything else (input from players changing the way the game-world responds)

b) get programmers interested in either developing 3D games or teach/make YouTube turitoral teaching-lessons to instruct others how to do 3D programming for the 7800?

 

I mean, such things demand quite high expertise.  
 

And the peoples knowing this stuff have to do priorities in life…

 

(all this is one the note of completely open questions).

  • Like 1
Link to comment
Share on other sites

@Giles N

 

I do, but I have too much on my plate with other projects to get into it. I'd be more than happy to help in a small way if anyone wanted to try it.

 

Personally I would aim for a 256*192 resolution using the 320A mode for wireframe graphics as it would take only 12 objects to set up the entire 3D display, and HUD elements could be drawn in the 32 pixels either side if needed (or overlaid keeping in mind the transparency limitations in 320 modes). The 320A mode also simplifies the rendering because you don't have to worry about managing pairs of bits to get the right colours, nor would you have to take into account the wide pixels for screen coordinates. A screen's worth of graphics data (32 bytes * 192 lines) would be exactly 6K so cart RAM would be necessary, but it would be possible to double-buffer the screen and have 4K left over for game data.

  • Like 1
Link to comment
Share on other sites

1 minute ago, SmittyB said:

@Giles N

 

I do, but I have too much on my plate with other projects to get into it. I'd be more than happy to help in a small way if anyone wanted to try it.

 

Personally I would aim for a 256*192 resolution using the 320A mode for wireframe graphics as it would take only 12 objects to set up the entire 3D display, and HUD elements could be drawn in the 32 pixels either side if needed (or overlaid keeping in mind the transparency limitations in 320 modes). The 320A mode also simplifies the rendering because you don't have to worry about managing pairs of bits to get the right colours, nor would you have to take into account the wide pixels for screen coordinates. A screen's worth of graphics data (32 bytes * 192 lines) would be exactly 6K so cart RAM would be necessary, but it would be possible to double-buffer the screen and have 4K left over for game data.

So, in essence help out if a team got together to develope a 3D game…?

Link to comment
Share on other sites

In the sense of answering questions where I can and making suggestions, yes. Whoever codes it would need to know assembly as at a minimum the drawing routines in 7800basic aren't set up to allow you to point to arbitrary spots in memory for the graphics, but with assembly you can manually set up those routines to do so. Additionally as good as 7800basic is, with the amount of data to be shifted it would be noticeably slower from small overheads than handwritten, optimised assembly.

  • Like 3
Link to comment
Share on other sites

Someone was working on a first person rpg dungeon crawler for the 7800 but I dont recall the project name or whether development is still going on, maybe someone knows what demo I'm referring to.

 

It wasn't polygonal 3D, but had elements of a 3D game that could be instrumental in exploring the 7800s 3D capabilities. If the creator can be contacted 

Link to comment
Share on other sites

You might be thinking of Spire of the Ancients, in which case I'm the developer and it's one of the reasons I wouldn't want to start a 3D project right now.

 

It's been on hold for a bit so I could get some smaller projects under my belt (SotA is the first thing I started on the 7800), and because it's outgrown my Mateos cart so I needed to wait until I could get a Dragonfly which I now have.

  • Like 5
Link to comment
Share on other sites

2 minutes ago, Giles N said:

@Trebor

It was an immensly impressive Demo you posted.

Do you know who were involved?

Anyone here?

Anyone still active with the 7800?

As linked in the Atari 7800 Homebrews and Hacks Thread:

 

Desire

1E78 Demo (PAL) | Apr 20, 2019 | Done

 

Quote
Demo presented at Revision 2019 in Oldschool Demo Competition.
Code by Heaven and Probe
Graphics by Bokanoid and Alien
Music on the TIA chip by Triace
This world first (?) full scene release for the Atari 7800 gaming console on a standard 128kb gaming cart with additional 16kb RAM.
 

https://www.pouet.net/prod.php?which=81011

https://www.youtube.com/watch?v=h1Cxe82Hlpg

 

  • Thanks 1
Link to comment
Share on other sites

On 8/16/2021 at 3:34 PM, Linndrum said:

We need VladdR back up in here, he got ran off from the Jaguar community for doing cool 3D stuff, then he started experimenting with 3D on the Lynx and was making progress with that, but he hasn't been around for a while.... Who knows what he's up to now

I don't think the 7800 community needs someone who promises something great, shows off crude unfinished demos with no sound, and then disappears for years on end with the excuse that he moved/changed jobs/got stuck in a snowstorm/etc. There are plenty of 7800 developers who actually finish stuff, be happy with them.

 

 

  • Like 1
  • Haha 2
  • Sad 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...