-
Content Count
459 -
Joined
-
Last visited
-
Days Won
3
Posts posted by solidcorp
-
-
If you do decide to release the game someday, it would make a nice companion release to John's port of Rip-Off. A Cinematronics two-pack, perhaps.

LOL - Nathan you and I think alike - that was one of the first things I thought of too. Unfortunately, that would require Rip-Off being completed someday (j/k)...
I would like to compliment Mr. Williamson for what looks like a fantastic port of Star Castle - one of my favorites from back in the day. I, like so many, wait with anticipation at a chance to play the game some day (and buy a copy should it ever be sold).
Reading the posts this reminds me of how I felt challenged to port Lady Bug. It was believed that a decent port could not be done, and it certainly was a thrill to put together a game (with lots of help, mind you) that proved otherwise. As the development thread shows, this was a collaborative effort from the design point-of-view but I was still able to come up with mostly all of the 'tricks' that allowed the game to be ported over with little or no compromises. Additionally, because of the feedback from the community and help with the sounds (Bob D) and graphics (Nathan) the final result was even better than I could have imagined. By comparison, my port of Caverns of Mars (titled Conquest of Mars) was developed 'in secret' (for certain reasons beyond my control) and only released directly to the AA store. Although I am proud of the technical achievement, I do wish that I could have used a similar approach as I ended up using in Lady Bug for it would have certainly produced a better 'game', and in the end that is what I feel is the most important reason to program for the 2600. Anyway, just some thoughts about the challenges I faced when making a game for the 2600 - maybe these experiences can help you decide the best approach for the development of Star Castle.
Good luck on finishing Star Castle... if there's one thing that I've learned is that it's very difficult to call a game 'done', especially when it's a 2600 game and you still have cycles/ROM to use... there's always 'one more thing'

Thanks so much, and I'll finish it if it kills me (or my wife kills me
). Seriously, it's close.D. Scott Williamson
-
Since nobody posted some screen shots
, I had a few peeks at the YouTube video (dial-up connection here!). Are the shields rotating?
Hi Thomas -
Yes - the shields are rotating. I'm not sure how to get screen shots off of YouTube (beyond capturing the whole screen)... if I can figure it out I'll post them here.
I'm sorry about the delay, I'm the only one who could post actual screen shots and I have been unavailable. Here are some that show the shields rotating.
D. Scott Williamson.
-
Just another excited Star Castle and 2600 fan.
Wow, the new version looks excellent. I didn't think it was possible.
For any Star Castle fans who run DOS, there is an excellent game called Xolo available at DOSGames.com. It's shareware, and great fun.
I do hope Star Castle is available in some form, some day, for 2600. Thanks for showing that it is indeed possible Scott. Great job programming for the 2600. I know it is difficult to do.
Thanks littleman jack!
D. Scott Williamson
-
Looks like that link for the Atari keyboard was a mock up and not the real deal. The SpectraVideo unit seems like it would be a more useful, obtainable bit of kit. Takes cassettes too! http://www.atarimuseum.com/videogames/consoles/2600/compumat.html
I was thinking about how to implement this Star Castle game in Batari BASIC. I think I'd try using playfield pixels for shields and a lookup table for sin values (to plot rotating lines for shields.) Is that similar (albeit in assembly) to your method solidcorp?
I didn't use playfield pixels because they are each 4 player pixels wide, but there is no reason they couldn't be used.
The method you outline sounds interesting but my method is a little different. There's more than one way to skin a cat, especially in software.
I used the two players, missiles, and the ball for all the graphics and only used the playfield bits for debugging which is commented out now. You can display each player triplicated (is that really a word? 8 bit image repeated 3 times 8 bits apart). I triplicated each player and positioned them centered on the screen so that they interleaved each other like this P0 P1 P0 P1 P0 P1, each sprite filling in the spaces between the others images. Normally the same 8 bit pattern is displayed in each 3 images for each player but if you load the graphics registers very quickly with just the right timing and some creative programming you can just stay ahead of the electron beam and display 48 unique bits of sprite graphics. That's how the title screen, score screen, and shields/cannon are drawn.
The routines to draw the shields pull bits out of a packed structure in RAM and mask them for display. Logically, each ring is a circular bitmap, albeit in a complicated nonlinear data structure. The bits are packed into memory in a way that is friendly to the draw routine which must be done very quickly. There is one large routine that calculates which shield segments are on and which are off with rotation, which is simply a scroll function since each ring is a circular bitmap, and fills the appropriate bits accordingly. The cannon frame is also packed
You are definitely on the right track with the trig; I use sin and cos tables for shot and fuzzball velocity, ship thrust velocity vector, and the trajectories of the sparks. I use a custom atan2 table to calculate relative angular directions to things to get the cannon to face the ship, the ship to bounce off the shields, the sparks to chase the ship, and as part of the calculation to determine which shield a shot has collided with.
IDK if batari basic already has any function for 48 pixel wide sprites but that may be a nice addition if the timing intricacies can be handled at compile time.
D. Scott Williamson
-
I suggest that should be done via PM, we don't need another piracy flamewar breaking out.
Yes, please, we don't need to taint this discussion with that.
..Al
OK. Sorry.
D. Scott Williamson
-
Has anyone ever heard of anyone getting their hands on one of these Atari keyboards?
http://www.atarimuseum.com/videogames/consoles/2600/keyboard/

It doesn't look like it was finished, but it looks like a cool start. That looks like a 400/800 drive cable.
D. Scott Williamson
-
This is turning into one of the most interesting threads in recent memory

I'd still like to hear someone tell in their own words what went down with the 7800 Gorf guy.
D. Scott Williamson
I suggest that should be done via PM, we don't need another piracy flamewar breaking out.
The story keeps getting better and better, more tantalizing - okay if anyone wants to message me, I'm all ears, but I will head the moderators warning and drop it.
D. Scott Williamson
-
This is turning into one of the most interesting threads in recent memory

I'd still like to hear someone tell in their own words what went down with the 7800 Gorf guy.
D. Scott Williamson
-
Page 89 of this 2600 field manual is getting close to what I'm looking for:
http://www.atariguide.com/pdfs/Atari_2600_VCS_Domestic_Field_Service_Manual.pdf
D. Scott Williamson
-
Looking at your board, I see an output pin on the PLD connected directly to the CLK pin. The address bus can take some time to stabilize, so typically we use a series resistor here with cap tied to ground on the CLK pin. Try 2.2k-4.7k and around 100pF.
Thanks, you may have salvaged my weekend

D. Scott Williamson
-
I am kind of interested in your program driven LED idea, can you elaborate on that?I'll be happy to talk about it later but I want to get it done and working first.

I have some questions about bus timing on the Atari though. My bank switching used to work and now it's broken. There's a good chance that I messed up the combinatorial buss logic when I edited the file last (it was a cleanup - some cleanup
), but now it appears to doing bank switching when it's not supposed to. Is there a good buss timing diagram for the 2600 somewhere?
So, am I correct in assuming that A12 is really an active high output enable? Does it go low high low for every byte read or does it stay high for sequential reads? (can it alone be used as a clock)? Do A0 - A12 transition lazily (simultaneously) or does A12 (OE) lead or trail the address lines? Put another way, if used conspiratorially to generate a clock are overlapping address line transitions likely to generate false clocks?
I can and will sort all this out, but the best I have is a digital dual trace (three if I view the trigger line) osciliscope so it takes time to really get a handle on buss transitions.
I bet you anything that I've accidentally inverted the internal clock line which will kind of look like its working most of the time, which is the observed behavior.
Thanks,
D. Scott Williamson
-
was driven to design my own PCB and logic because of the [understandable] unavailability of carts and casesActually, I have many types of PCB's available most of the time, I can even provide you with PCB's that support the SARA chip (more RAM).

Thanks CPUWIZ, actually your boards were the ones I found later. Making my own board turned out to be fun though.
D. Scott Williamson
-
...but I don't have the RAM/ROM...
I am sure I could help here.

In the words of Ren Hoek "I can do it... myself!" (bonus points if you have any idea what I'm talking about)
Thanks for the offer, I've made it this far and I'm compelled to complete it on my own.
No bonus points for me, but I completely understand.
BTW: I suggest you to set yourself some kind of deadline, else you might never finish your project.
However, if I ever release the source I would love to hear what you and others have to say - good and bad - about it. It's damn clever in spots but it's far from perfect.Will do. Did you have a look at other people source code (e.g. disassemblies or homebrews)?
Actually, originally, I got out my xeroxed 6502 reference pages, Atari notes, and yellowed fanfold printouts from when I worked at Atari. Later I did look at internet reference, code snipets, and demos from Bjars, alienbill (HTML stella manual), and others. I found the Harmony cartridge here on Atari Age and was driven to design my own PCB and logic because of the [understandable] unavailability of carts and cases (I found some later). I needed the most help in audio which is ironic because the code I wrote for the 2600 at work at Atari was a digitized sound driver. I didn't look at any home brew source or bins until I looked into some of the links here on the forum. I haven't necessarily been part of the community.
D. Scott Williamson
-
...but I don't have the RAM/ROM...
I am sure I could help here.

In the words of Ren Hoek "I can do it... myself!" (bonus points if you have any idea what I'm talking about)
Thanks for the offer, I've made it this far and I'm compelled to complete it on my own.
No bonus points for me, but I completely understand.
BTW: I suggest you to set yourself some kind of deadline, else you might never finish your project.
However, if I ever release the source I would love to hear what you and others have to say - good and bad - about it. It's damn clever in spots but it's far from perfect.Will do. Did you have a look at other people source code (e.g. disassemblies or homebrews)?
I did, it was VGS

Seriously without that deadline I wouldn't have it nearly this far right now - ask my wife, she missed me in the evenings for the last few weeks.
D. Scott Williamson
-
...but I don't have the RAM/ROM...
I am sure I could help here.

In the words of Ren Hoek "I can do it... myself!" (bonus points if you have any idea what I'm talking about)
Thanks for the offer, I've made it this far and I'm compelled to complete it on my own. However, if I ever release the source I would love to hear what you and others have to say - good and bad - about it. It's damn clever in spots but it's far from perfect.
D. Scott Williamson
Would that be Ren from Ren and Stimpy?

Ding Ding Yes it is.
-
...but I don't have the RAM/ROM...
I am sure I could help here.

In the words of Ren Hoek "I can do it... myself!" (bonus points if you have any idea what I'm talking about)
Thanks for the offer, I've made it this far and I'm compelled to complete it on my own. However, if I ever release the source I would love to hear what you and others have to say - good and bad - about it. It's damn clever in spots but it's far from perfect.
D. Scott Williamson
-
P.S. Is there a way to make the tabs stay in the posts? It keeps collapsing my code left.
Yes there is a code snippet box that you can use. It's in the full text editor.
; X DONE FIRST BECAUSE OF THE LARGER X RANGE - MORE LIKELY TO EARLY OUT LDA SPARKX SEC SBC SHIPX CLC ADC #SHIPSPARKRADIUS CMP #SHIPSPARKRADIUS*2 BCS .SPARK_MISS_SHIP LDA SPARKY SEC SBC SHIPY CLC ADC #SHIPSPARKRADIUS CMP #SHIPSPARKRADIUS*2 BCS .SPARK_MISS_SHIP .SPARK_HIT_SHIP ; BOOM .SPARK_MISS_SHIP
Just wanted to say I totally understand coding something simply because it's a challenge. I'm wondering what you got left that you want to implement?
Jeff
I would like to:
- Improve shot accuracy, they used to be perfect but after I optimized them sometimes shots are too slow and take on angles that don't appear to match the ship direction. This is the biggest gameplay issue.
- Remove the spark timer and add a high score - but I don't have the RAM/ROM to display the high score so I have to think about it. Sparks are supposed to start in the center and ride on the shields until they pop out into space. I don't have the room in the ROM to code that unfortunately.
- Add progressive difficulty (spark speed) currently it's one level over and over that starts too hard and never gets any harder
- Change the ship/spark and ship/fuzzball collision to use the hardware - that should buy back ROM, time, and be pixel accurate as opposed to box accurate.
- Improve ship explosion frames - I rushed those out and the particles don't flow out right.
- Play a little more with the drone sound - I think I took some pitch liberties and it should try to mimic the arcade
- Take the shimmer off the score ships screen and add some color effect to the title screen. That's really tricky, there's only 4 bytes free in that bank of ROM
- Cycle the title screen between the last score screen or high score and the title. Once again that bank is full and the words high score would take 30 bytes in ROM without even considering the kernel code to display them.
And of course the PCB, programmable logic on the board, and the cart case.
D. Scott Williamson
- Improve shot accuracy, they used to be perfect but after I optimized them sometimes shots are too slow and take on angles that don't appear to match the ship direction. This is the biggest gameplay issue.
-
Quake came from Doom which came from Wolfenstein.That is the one thing I would have to disagree with you on. Wolfenstein was EPIC at the time. AFAIK, it was the first 1st person 3D shooter with stereo sound. It was immersive to me! I was blown away that you could hear gunfire to your right, spin that way, and see the guy shooting at you. But other than that, I agree, most really great titles were works of improvement using previous versions as test beds in a way. I have almost an embarrasing amount of time invested in Oblivion, and never really enjoyed Morrowind. The only 2600 game I invest time into is Escape from the Mindmaster and Dragonstomper.
Yea, I have to admit Wolfenstein was epic. Also one of the first/most successful limited try before you buy games - download and floppy. There is Mario who started in Donkey Kong and has grown ever since, but DK was huge too, there are other titles that illustrate my point but they all escape me at the moment.
D. Scott Williamson
-
I suggest that folks who are upset by the unavailability move on. Badgering the developer with complaints is unlikely to convince him to change his mind, and if anything just turn him off from the idea of an eventual release.
I agree, can I lock this thread now, so we can just forget about it?

Why lock a thread? why the censorship?
Nothing malicious is being said, no feelings are hurt, I've answered questions about the code, the history, and a couple Lynx questions.
If people don't want to participate in this conversation it will die.
D. Scott Williamson
I was going to hold back on a few questions, but you're a surprisingly good sport, and it's rare to pick at the mind of someone who does this for a living.
I heard you're involved with The Conduit series? Correct me if I'm wrong. The rest of this post is going to appear amazingly silly.
The first game in the series was an attempt to prove the Wii was an underrated piece of hardware. It failed by many accounts, due to a lack of stand out moments and severe repetition.
Now the second title is on the way, and looks to make good on the promises of the first. Reading up on it, reveals the quote that nothing makes it in unless it actually excites the team.
What generates excitement in creating a world? What's the difference between a good design and a bad?
How does one stand out in a sea of me-too titles?
I'm not sure an Atari 2600 forum is an appropriate place for me to get into too much detail about a Wii title and there is a limit to what I can say about Conduit2 and my work at High Voltage. I will try to keep my answer brief and if you like you can send me a personal message.
I am the head of the Advanced Technology Group at High Voltage Software in Hoffman Estates Il. (Thanks Selgus for hiring me!) It's my job to manage the team that invents, extends, and maintains our technology, and I am an active programmer on the team. We have multiple game engines on multiple platforms. Any given day I can work on any combination of PS2, PSP, Wii, Xbox360, PS3, PC and some I can't talk about. My team was responsible for creating the Wii graphics pipeline and tools for The Conduit. When it shipped I believe we were one of a handful of developers in the world at that time with such a flexible, powerful, and efficient graphics pipeline and toolset. We also did a lot of work optimizing things behind the scenes, at times writing a lot of power PC assembly to squeeze any performance we could out of the not quite next gen Wii. In those technical areas in which my team and I were involved I believe we were successful beyond any expectation. Since then we have further extended our graphics capabilities and optimizations on the Wii and it is to this day some of the work that I am most proud of.
The company is acutely aware of what was more or less successful in the first title and has really focused efforts on new features that will address everything you mentioned and more. Believe it or not, I see less of Conduit2 than I did of The Conduit mostly because all the tools and tech work most of the time now and they don't need as much help from ATG, but I can say that some of the levels are breathtaking. The concept artists, production artists, and design have been working really hard and the spaces and themes are stunningly beautiful especially for a Wii. We developed the first title along with the technology and there were a lot of growing pains and rework. Now the tech and tools are mature and the artists are experienced, the resulting quality and productivity are visibly improved. I can't say too much more, snoop around the web for more specific info, the game did show at E3.
I'm a technologist, I haven't done game design in a long time and it wasn't my strongest suit, so I am going to stick to talking about what I know about

As far as me too titles, it's my opinion that first person shooters are still underrepresented on the Wii as a percentage of titles overall as compared to the PC, PS3, and Xbox360. It's a viable game genre. Most importantly, if you are going to do anything do the best you can all the time. Always do everything you can to be the best, because if you are, then the others are the also rans.
One more thing - epic games are rarely epic on the first version, consider Unreal, GTA, Burnout... Quake came from Doom which came from Wolfenstein. I'm not so vein as to tell you that Conduit2 or any other title is guaranteed to be the next big hit, but if you get a good start and keep reinvesting in a title, the chances of creating something great and just maybe hitting commercial critical mass get better.
D. Scott Williamson
(sorry, I guess I didn't keep it as short as I had liked, I hope this wasn't too preachy)
-
Is there a way to make the tabs stay in the posts? It keeps collapsing my code left.Enclose your code in
tags (omit the spaces), or just select the code and click on this button:
Clicking the button with nothing selected will insert the opening and closing tags at the current cursor position.
Thanks a million, I knew it had to be there somewhere.
D. Scott Williamson
-
Hello,
I would like to first extend a well-deserved compliment. This work looks very professional, and I think it's brilliantly done.
From the youtube video, the programming does some fascinating things that make programmers scratch their heads.
Including myself. I had to read your commentary to understand how you did some "tricks".
So, my hat is off.
You may not be aware, but I am also a 2600 programmer.
I would just like to share my experiences from programming 2 2600 titles.
"Pressure Gauge" was my first. I wrote that back in college because I was told that "the 2600 was the most difficult system to program for".
I love a challenge.
I spent a lot of time on it, and got a finished product out the door pretty quickly.At the time, there were very few homebrews (less than 20). Edtris and Okie Dokie had opened up the possibilities for people to try harder.
So, I joined the ranks, albeit with a "not too powerful" title.
My second game was only done last year. It was "Mean Santa". Honestly, "Pressure Gauge" is quite outdated in comparison.
It's blocky, kind of ugly, and is nothing graphically when compared to the modern achievements that today's homebrewers can make.
"Mean Santa" was an attempt to right those wrongs. When the opportunity came my way, I took it.
And, to be honest, I am pretty happy with the results. I too had an 8K limitation, which is a grueling constraint.
But, the game I believe has its fun parts and is quite playable.
What I am curious about on this thread is all of this info about ROM thievery.
"Mean Santa" was released (and is still available through a certain channel).
Yet, I have not seen anyone pirate it and make their own hacks/copies. And, even if they did, it wouldn't matter.
The atariage community and Digital Press were where the announcement was made.
People saw the game, respected my wishes that the ROM not be publicly available, and just decided to buy it and play it.
The publicity seemed to speak for itself-- people liked it, and others jumped in to purchase.
There are some royalties, yes, but again, it's not enough to make up for the 1 year of planning and on-again off-again coding.
You can never make up the hours it takes. It is an effort of your own personal challenge, and of love. And, an understanding spouse.

I have heard of people doing their own illegal releases of games in this community.
However, from my perspective (which may be wrong), it is more likely to happen in these conditions:
1) The ROM is released (prematurely, or as a demo version before the real work is done)
2) The author does not speak up saying "please don't release the ROM. I made copies you can play, but they're for you"
3) The amount of copies is limited.
"Mean Santa" is still available, and I am unaware of any piracy actions happening. People in the community have been very respectful.
Even if they weren't, though, it wouldn't matter. It's unlimited (you can still buy it), and it's cheap. You want a copy? Great!
Head here, and plop down 15 bucks and shipping, and it's yours: http://2600connection.atari.org/msorder.html
So, if people want to play it, they can. Pirates are going to find no reason to mess with this.
And, when the ROM eventually does get out there, it won't matter. Sure, maybe some guy will play it "for free" at that point.
But, that doesn't matter to me. What mattered was getting the hundred+ copies into eager player's hands.
And, honestly, my thoughts on it are this-- personal drive is awesome. Having people see a demo and commenting is nice.
But, when it's in the players hands? That completes the feeling. This community here is UNBELIEVABLE.
Not everyone here can program (only a few), and the appreciative comments roll in like a waterfall.
And then... even stranger things happen.
- A weird bug is found that you didn't catch in hours upon hours of testing.
- Somebody spends 9 hours on your game in a row and makes an impossible high score.
- A magazine from another country reviews it, and you can share that with your friends.
The community here is very, very grateful when they're "involved". I think they're wonderful.
Now, I'm not trying to persuade to you either way. Your wishes are your wishes.
You don't have to release the ROM. Heck, I wouldn't even consider that at this stage (since that IS detrimental for now).
What I don't understand is the paranoia of encryption for keeping pirates at bay.
There are services that do unlimited releases at exceptional prices (Atariage is one of them).
Such things mean that 90% of produced copies will end up in appreciative hands, and 10% may go to people who want to do their own choosing to it.
And, if one of those 10% guys makes illegal copies, they'll be nothing compared to the efforts put into boxes/instruction manuals that these guys can do.
And, who would want to buy that piece of crap? Oddly enough, most people here are looking for a collector's piece. A blank cart that says "Mean Santa" on it isn't going to sell at all (especially, when a real version is that cheap).
But, getting back to those 90% of the community that gets to play your agem--- wow! What a community.
I have no regrets for distributing "Mean Santa" and have not seen the problems worried about in this thread.
Maybe it'll happen, but by now, everyone who wanted a copy has one, and that was what really mattered.
And, if anyone does pirate "Mean Santa", I know the community here has my back and will let me know immediately.
We'll get the guy.

On another topic, I have one other suggestion that you may wish to consider.
You could always set up a website that plays the rom through that JStella (?) emulator.
People can try your game on a browser, and not be able to download the ROM.
That seems to allow those 90% can play and give feedback, without any of the drawbacks.
If you have not considered that as an option, I would recommend it.
That may be your "middle ground" that you should seek, at least at this point.
Anyway, in closing, it looks great, and I am impressed with your software trickery.
"Welcome aboard!"
-John
Inspiring. Thank you. I know I sound unreasonably selfish to some people, I can't help but say that's what I want to do with this project for now.
The part about the understanding wife should be in a large bold typeface

D. Scott Williamson
-
I say someone take this as a challenge to create a public domain or Creative Commons version. Solidcorp has already posted some tricky code and seems pretty cool. How about "Star Cathedral" as an homage to Eric S. Raymond

Oh, and, I guess Dan Iacovelli wasn't knocking bBasic or poor newbs like me. My bad

I think that's a great idea. I'd encourage anyone to try to do something hard naything - it's win win. If you succeed you will have a version that you will be more comfortable sharing and if you do not, you will no doubt learn plenty along the way.
D. Scott Williamson
-
I see no reason for it to be locked at all. Goodwill has been extended and most of the "peace" and suggestions have already been spoken. Besides, D. Scott Williamson still has a lot to share and seems willing to go forward.
If anyone wants to be a real douche about Mr. Williamson's conditions, then I think they should be dealt with individually or taken with a grain of salt as we often do in society.
-edit-
The subtitle to this thread is a little jerky and assumptive, but funny at the same time. Humor, it's an often mistaken artform

I hadn't noticed the subtitle to this thread until now. I don't know who added that or when but that is pretty mean spirited and not something I would typically expect on Atari Age.
D. Scott Williamson
-
2
-
-
I suggest that folks who are upset by the unavailability move on. Badgering the developer with complaints is unlikely to convince him to change his mind, and if anything just turn him off from the idea of an eventual release.
I agree, can I lock this thread now, so we can just forget about it?

Why lock a thread? why the censorship?
Nothing malicious is being said, no feelings are hurt, I've answered questions about the code, the history, and a couple Lynx questions.
If people don't want to participate in this conversation it will die.
D. Scott Williamson
Jeez, I even posted code from the game this morning.


NEW Atari 2600 Game Shown
in Atari 2600
Posted
Thanks Atari2600Lives!
D. Scott Williamson