-
Content Count
157 -
Joined
-
Last visited
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by idavis
-
Michael, Sure thing. I can fix the cursor color no problem. It's a value I set up in my init code. Any suggestions? How about a gold or yellow? I am attaching a new version with the cursor in gold. I am sure that I will be working on sound as well as fixing up the winning routine as it's begging for something more flashy. I also have written up a basic document on how to generate a puzzle. It's quite long, and needs to be viewed on a fixed length font for the basic ascii art to work. I think I will save it as a document and attach it since posting it might be a little long in the tooth for those who don't want to read it. Thanks, Isaac sudoku.zip BuildingASudokuPuzzlebyIsaacDavis.txt
-
Thanks. I am not that artistically inclined, so you are right, I might make them worse. I was thinking about an options page where you could select certain things like colors and maybe char sets. For now, my main concern was making something that was visually non-offensive, since you could be staring at a screen for quite some time. Flashy colors might get harsh after some time. I also wanted it to be easy enough to distinguish between numbers you have entered and ones that are given without making the difference too visually distracting. My neighbor is a musician, so maybe I can get a quick tune out of him for the winning sequence and splash page. I don't think I want to have it play in the background while you are playing, as anything looping could get on your nerves as fast as a set of awful colors. I also forgot completely. I misspoke on the bytes requires to store a puzzle. I have it at 24. You have to split out the top and bottom halves of the byte, but I am using the scheme in my prog and it's working fine. If you don't pack the two halves together you need 48 bytes. I will work on a doc to explain it all and post something up here. It more like storing a map of where to place the numbers, then storing the actual numbers. Isaac
-
Ok. Here's what I will call version .01. It's an .atr file with the exe set to autorun.sys. Rules: Typical Sudoku rules apply. 1-9 in each column, row, and square. No duplicates. You start out with 4000 points, and acquire 10 points for each square filled in (right or wrong). The game automatically checks to see if you have correctly completed the puzzle. When you have every square correct, the bonus (if any is left) will add to your score, and the sreen will blink for a couple of seconds. I didn't want it blinking too long for fear of putting someone into a trance. Once you have finished a puzzle, you can hit Start again to begin a new game. Don't hold it too long for now as if you do, you will use up a hint or two on the new game before you have even gotten started. I was going to code that to slow down, but the splash page will fix it when I get that coded and drawn up. Controls: Basic Joystick. Up, down, left and right. Holding the button will allow you to change a value by pushing the stick up or down on a square Hints are programmed a little different than you might think at first. When you hit the start button two things happen. First, you lose 500 points for the hint. Second, all of your entries are checked. The correct ones are left, and the incorrect entries are blanked back out, and you lose 20 points for each one. You are only allowed to get a hint 4 times, and then you are on your own. Hints will not however give you a clue as to what a square might contain other than telling you if you guessed it wrong or right. Notes: Sounds, colors, and look and feel are all preliminary. I am using a custom Char set and a full screen Graphics mode 2 (12x20) screen. I didn't touch the 1-9 chars though I have thought about redrawing them to make it more custom looking. I also am wanting to a make a splash screen and take my name off the main game screen, just leaving the Score, Bonus, Hints, and Sudoku on the left hand side. The plan for a splash screen will be to put up the title, credits, and allow you to pick a difficulty. Right now, I have it set to randomly blank 40 spaces for you to fill in. I am thinking this will be the medium setting, with 30 blanks being easy, and 50 being difficult. I am also considering rewriting the blanking code, although for now, it does seem to come up with some really interesting conbinations some times. All comments will be taken seriously, I just don't know how much time I will have to do things like "add fireworks at the end" as my neighbor has requested. I want to keep this around 8k, and am currently sitting at around 6k, and that is including the screen ram (240 bytes). I also have left the code to generate a random puzzle in as well, just no way to activate it as of yet, since it will need something to let you know it's "working" on the new puzzle. As for a 5200 version, I will need to read up on converting to 5200. I am sure that since I have all of the source code, and Synassembler allows you compile straight to a file, I will just need to remap the compile location, and recompile. I might have to check things like joystick codes and/or locations. I have also thought of making a two player version with a cooperative mode or heads up mode available. sudoku.zip
-
First, thanks for the replies all. I will just keep the thread here. I don't want to splinter off the discussion. This could turn into a 5200 port I am sure, since the 800/5200 are basically the same. I will have to research and since I don't own a 5200 per se, might need some help testing on something other than an emulator. To answer the 48 byte question, I came up with my own algorithm to store and generate a puzzle (9x9). I have been working on this for months, and spent the majority of it on just building a puzzle. The actual game code came after I got that down. I am going to write up some documentation, and publish it on my little scheme. It's just a formula I came up with after nights and nights of staring at the puzzles and trying to figure out how to get this to work in assembler. It's really simple when you see it, and it I actually had to explain it to myself a few times to make sure I was right, but it's working. Actually the code to generate a puzzle is probably under 2k when you scratch off the extraneous bits I needed to turn this into a game. Since it takes a random amount of time, and possibly up to a few minutes depending on the luck of the draw to build a puzzle, I used my scheme to store about 15 built puzzles in the code. I then wrote a routine to shuffle the rows and columns, staying in the blocks of 3. As long as you shuffle row or column 1,2,3 or 4,5,6 or 7,8,9 you still have a valid puzzle. Mix 3 and 4, or 6 and 7, and you blow the puzzle. So when the program comes up, it picks one of the 15 generated puzzles, and then shuffles it. I don't have any code yet for a splash screen, and to pick a difficulty level, but that's coming. What's the best way to post? An exe file directly, or maybe an ATR image with the program as autorun.sys? Isaac
-
The title speaks for itself. I have spent the last few months teaching myself 6502 assembler, and now I have a working game. I have been holding back on announcing anything till I had at least a simple working version. I noticed that SeaGtGruff has been working on a 2600 version, so I am opening a new thread for my 800 version. Background: I got my 800 back in '82. It's been the inspiration for my career. The only thing I have regretted all these years is not learning assembler. I wrote a lot in Basic, and moved up to higher level languages. Long story short, I have been dragging all my Atari hardware and software around for years. Our oldest son went off to the Army, and his bedroom is now my office. So I pulled the Atari out of the closet, dusted it off, and pulled out my copy of Synassembler intent on fulfilling a lifelong dream. I was intent on learning assember, and programming a game for my beloved Atari. I have things like a eprom burner, and a blank eprom cart, so I have been slowly working on this for years. God only knows why I decided to make a Sudoku game as my intro to assembler.. I should have picked something easy like a Global Thermonuclear War Simulator. Now to the code. As of yesterday, I have a working game. If I still have your attention, I want to know if there's any interest in a 400/800 version of Sudoku. It's probably not the flashiest, or the most exciting, but it's sudoku, and it's now working. I have a few things left to code, like a splash screen where you can select a level of difficulty, and I am sure a lot of polishing on things like sound, and the routine when you complete a puzzle. My 12 y.o. thought it was fine, but I think he's just being nice. My neighbor wants fireworks to go off. I am at 6k and can probably trim it back to about 5k. I have the routine to gen up a new random puzzle, but it can take anywhere from 5 seconds to a few minutes to actually gen up a 'legal' puzzle, so I need to come up with a distraction while the puzzle if generating. Another idea would be to use the spare time to have it generating a new puzzle in the background. That will take some modifying code to save state. Not hard, just something I was saving for last. So is anyone interested in a real cartridge eventually? I am sure that I will just release this as an ATR, or a MaxFlash image eventually, but I want to test the waters. If nothing else, I want at least one cart for myself. I realize the homebrew situation, and didn't do this to make any money. Just to prove I was crazy enough to pull it off. Isaac Note: I will be around next week, but am leaving at the end of the week to go watch our oldest graduate Basic Training. I was torn between mentioning the game and then going on vacation, or waiting till I got back. Looks like I couldn't hold it in. I can't forget, I need to thank my son for the office.
-
Thanks for the quick reply. I will post up a new thread. I have spent most of my time coding in a routine to generate a working puzzle. I have it to where I can store a complete puzzle in 48 bytes, with the routine to gen up the puzzle. I have also left in the code to generate one on the fly, which is funny, since it can take anywhere from about 5 seconds to minutes to generate a 'legal' puzzle on the 800, at least using my routine. I was shocked to find that I could get 80% complete on building a puzzle, and find out that it's impossible to complete the build. When you get to where you start gen'ing up a puzzle, I can possibly help with some 6502 assembler to assist. Thanks, Isaac
-
Hey guys, new to the forum. As a coincidence, I have been programming a Sudoku game for the 800, on my original 800. I am using Synassembler. I have been toying with the idea of contacting Albert about working with him and making a run of carts. As of now, I have the game loop programmed, and as of last night, it's officially a working game with score and all. I need to work on a splash screen and maybe some flashier graphics, and definitely the ability to change options like difficulty. So far I am sitting a 6k, and have some code I can consolidate and remove altogether. I do have worknig 6502 code to generate a puzzle, and also have been able to store a working "complete" puzzle in 48 bytes. I guess my question is, since this thread is for a 2600 version, should I start a thread for my 800 version. I want to ask some questions like: Should I just button it up and release it to the wild? Try and make a run of cartridges? It's been a dream of mine since I was 12 to write a game and put it on a cart. Personally, I will be able to do this when I am satisfied with the code, as I have an eprom burner, some eproms, and a board waiting. So will conversation of my game splinter this thread too much? Your thoughts. Isaac
