Jump to content

Lewis2907

+AtariAge Subscriber
  • Posts

    443
  • Joined

  • Last visited

Posts posted by Lewis2907

  1. Thanks. I started to play with Dev Studio some. I did notice the bottom of the errors when I tried to compile it and play around. I think it's the C Header files that are used with Dev Studio, but I could be wrong. Hopefully someone can assist me with your template as I would like to experiment with more in Bb. 

     

    [3/12/2024 10:33:33 PM] bblint found the following errors in exMultiSpriteColorKernel.bas
    warning(87):    missing matching end to "    asm"
    warning():    Found 17 commands that use end,  and 16 "end" commands.
    char = '{' 123 (-1: 0)
    char = '}' 125 (-1: 50)
    char = '{' 123 (-1: 114)
    char = '}' 125 (-1: 49)
    char = '{' 123 (-1: 114)
    char = '}' 125 (-1: 49)
    not within a macro
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (251): error: Unknown Mnemonic 'macro'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (252): error: Not enough args passed to Macro.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (253): error: Illegal character '{2}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (253): error: Illegal character '}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (254): error: Not enough args passed to Macro.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (255): error: Illegal character '{1}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (255): error: Illegal character '}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (255): error: Syntax Error 'player{1}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (256): error: Not enough args passed to Macro.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (257): error: Illegal character '{1}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (257): error: Illegal character '}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (257): error: Syntax Error 'player{1}'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (294): error: Unknown Mnemonic 'setSpriteGraphics'.
    D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas.asm (2212): error: Unknown Mnemonic 'endifstart'.

    Unrecoverable error(s) in pass, aborting assembly!
    Complete.
    Errors were encountered during assembly.
     

    image.thumb.png.02d9e12262223b13130a0ddd36e8c3e8.png

     

     

     

  2. splendidnut,

     

    I tried using your zip file and when I use Bb I get the below error. Not sure of the fix maybe an issue on my end.

     

    Compiling D:\13. Batari Basic\4. My Files\bb-multisprite-with-multicolorsprites_20240309\exMultiSpriteColorKernel.bas
    [3/12/2024 5:19:15 PM] bblint found the following errors in exMultiSpriteColorKernel.bas
    warning(98):    missing matching end to "    asm"
    warning():    Found 17 commands that use end,  and 16 "end" commands.
    Precompilation failed, aborted at 3/12/2024 5:19:35 PM

  3. It's an interesting program. Above what I can do for now. I noticed the "debug cycles" I was looking at RT's page as I never saw that used in Bb code until now. I might start to use that to try and catch my cycles when they go over. Another question is off topic. I noticed some ASM in our code. Where could I learn the basics as I typically cut and paste sample codes I find until I get them to work. Trying to get the Genesis Controller to work on 2600+. Works in Stella pretty well, but doesn't behave the same on the 2600+. I'm thinking ASM  would probably help and with some other stuff I'm tinkering with. 

    • Like 1
  4. Karl G,

     

    Thanks for the explanation. It was worth a shot unless there is a work around to use Stella as a tester then try it on real hardware or the 2600+ (since I bought one and it has renewed my interest again as I'm playing it now with my grand kids and telling them about the 80s). Just having the extra button and the "X" to toggle the BW/Color in Stella is a plus and need to test it on the 2600+.

     

    Making a game that requires mods to a controller would most likely turn people away per say. Plus the Genesis Controllers are cheap compared to the Sega Master System controllers when I was on Amazon and eBay looking around. I recall an adapter to use with the NES type, but probably the same issue.

  5. Attached is a sample program I'm trying to get to work. Ideally the "C" and "Start" button would be a total win. I noticed that the "X" button turns off the "BW/Color" in Stella so I assume that almost all the buttons could work if someone who knows more could build on to the sample program I got working. The 3 button is something I found at the below link, but it's in assembly and I not sure how it all works and if it could be added to a Bb program.

     

     

    3buttonread.asm.txt 20240128 - Genesis Controller.bas.bin 20240128 - Genesis Controller.bas

  6. As RT said copy and paste. I have used a lot of code I found in the forum and put it together to make small programs to learn. Once I sort of figured that out, I moved on to larger more complex programs. I think a shooting game is easier to start with vice a platformer since it could involve a lot screens and bank switching. 

    • Like 2
  7. Does anyone have an example program to map these buttons and possibly work on the 2600+? I would say the most desirable of course are the A, B, C  and Start. Reading and trying to understand it may be too much to map all the button based upon the Atari.

     

    1. Would be nice for each player to have as many as possible button. The "start" button would be for pause and the "B and/or C" button would be for jump / map screen. The other buttons if mapped would be for other games if you need all those buttons.

     

    2. The other option I'm thinking if possible is to map player 2 button controls into player 1 (if that statement made sense). Probably harder than what's it worth.

     

    3. if option 2 is feasible/not all the way feasible then would say multiplayer games and using those players button to simulate 1 & 2 players work. I have only seen / recall paddles with 4 players from when I was a kid. 

     

    image.png.59ceb1c7a1a7edd1d95c4a8ee2a5c25d.png

  8. Does anyone know if someone made a """Simple Video""" on how to get the Harmony Cart to work on the 2600+? Reason I bought both and some other stuff to make Sega style controllers work to test and play the Homebrew I have been tinker with in Batari Basic.

     

    I have been trying on and off to get the Harmony Cart to work with just one game and no luck so far.

     

    Thanks if anyone can help.

  9. I was able to figure out something. Just need to reduce the code some, but it works. Below is diagram of what needs to happen. You have to collect the fruit in all the rooms to have the "Key" displayed in room 4. Room 8 doesn't have a fruit as I'm using Bit Operations (https://www.randomterrain.com/atari-2600-memories-batari-basic-commands.html#bit) to track what is collected and each variable is limited to 8 Bits. The Nybble Variables probably could be used, but above what I can do. Otherwise you can enter the room but no "Key". This is something I was trying to figure out in the PacMan Game to make it harder and more fun. Time to incorporate this "bloated" code into what I have. Hope this helps others with some game ideas. 

     

    6  7  8

    5  4  3

    0  1  2

    20231221 - Inventory Tracker.bas.bin 20231221 - Inventory Tracker.bas

  10. 20 hours ago, LatchKeyKid said:

    How does using your version differ from the ones posting on RT?   I saw that they're using the supercharger cart hardware/format but I don't know enough about programming to go further than that.

    I'm no expert, but I think the SC gives more variables if used correctly. As far as the versions. I normally strip peoples examples down to something I can understand better and have a template for future games or something to share with people trying to learn Bb. Nothing wrong with RT's code as it's way better that what I posted and used to learn Bb especially the way he has his notes/comments as at times  i have reteach myself something since I jump around with all 3 kernels. Most of the time I copy and paste their code and make notes of what I think it does. That's how I started out learning Bb and experimenting a little with 7800basic now (that is a little more complicated for me right now). I plan to learn ASM as well since it's used here and there with Bb. Hopefully my gibberish made sense. 

    • Like 1
  11. On 9/3/2022 at 12:42 PM, Philsan said:

    @Karl G first of all, thanks for your code (and thanks to @Random Terrain for example program).

     

    I would like to design a world that always remains the same.

     

    Is there a way to make the rooms appear in a defined order?

    I don't need to track visited rooms.

     

    For example, room#

     

    1 2 3 4 5 6

    7 8 9 10 11 12

    13 14 15 16 17 18

    19 20 21 22 23 24

    25 26 27 28 29 30

    31 32 33 34 35 36

     

    Thanks!

    Philsan maybe this is what you are looking for. I was working on a few things and stripped this down some.

    20231229 - Inventory Tracker.bas 20231229 - Inventory Tracker.bas.bin

    • Thanks 1
  12. I was able to scale the code back some and make a Standard, Multisprite and DPC version. This should be a little easier for us newbies as I'm still learning Bb. The only thing I haven't figured out yet is to do a sequence in a certain order. Sort of below to make a map of the worlds. I think a data table may work ("similar to the PacMan Game I made, but it eats a "lot" of memory up) or something else similar. Either way this opens up some ideas and can continue my other builds.

     

    0 1 2 3 4 5 6 7

    1 2 3 4 5 6 7 0

    2 .....

    3......

    4 7 2 3 2 1 0 5

    5.....

    6.....

    7 6 5 4 3 2 1 0

    20231218 - DPC Openw World.bas.bin 20231218 - Open World Multispritte Kernel.bas.bin 20231218 - Open World Standard Kernel.bas.bin 20231218 - DPC Openw World.bas 20231218 - Open World Multispritte Kernel.bas 20231218 - Open World Standard Kernel.bas.asm

    • Like 1
    • Thanks 1
  13. 17 hours ago, Random Terrain said:

    If you are using the Standard Kernel, have you tried adapting the program on the bB page?

     

    https://www.randomterrain.com/atari-2600-memories-batari-basic-commands.html#maze_32x23

    RT, yes that my next plan. Basically using your examples to make the Multisprite & DPC version. Just checking if anyone knows a better code to get 5 sprites to display with out so much flicker. I can get 4 with either code. The EEE is a lot easier to understand which would help in a Standard Kernel game. I'm thinking 64K and make it as big as I can with an idea I have.

    • Like 1
  14. I'm playing around with the Standard Kernel. I have two versions that work so far (kind of). 

     

    1. Standard Kernel is adapted from https://forums.atariage.com/topic/147773-ed-edd-n-eddy-adventurerpg-med-mission-ed-impossible/#comment-1800296 

     

    2. Alt Kernel is adapted from https://forums.atariage.com/topic/340321-2022-atari-2600-games-prototypes/#comment-5115518 

     

    3. If you change a few things in the .bas code you can copy player0 & player1 twice with little to no flicker. Which would help in making some interesting Standard Kernel Games. If you move up to five copies you have the flicker. I think there is a way to reduce the flicker some, but not sure how to accomplish it. Not sure if someone can take a look at the code and have an idea?

     

    4. My plan was to use the missile & ball for Collison detection if that is possible. I recall someone doing that in an example. 

    20231216 - PacMan Eat N Run Standard Kernel_Alt.bas.bin 20231216 - PacMan Eat N Run Standard Kernel.bas.bin 20231216 - PacMan Eat N Run Standard Kernel.bas 20231216 - PacMan Eat N Run Standard Kernel_Alt.bas

    • Like 1
  15. I was able to scale the code back some and make a Standard, Multisprite and DPC version. The only thing I haven't figured out yet is to do a sequence in a certain order. Sort of below. I think a data table may work or something else. Either way this opens up some ideas and can continue my other builds.

     

    0 1 2 3 4 5 6 7

    1 2 3 4 5 6 7 0

    2 .....

    3......

    4 7 2 3 2 1 0 5

    5.....

    6.....

    7.....

    20231218 - DPC Openw World.bas.bin 20231218 - Open World Multispritte Kernel.bas.bin 20231218 - Open World Standard Kernel.bas.bin 20231218 - DPC Openw World.bas 20231218 - Open World Multispritte Kernel.bas 20231218 - Open World Standard Kernel.bas

  16. 1 hour ago, LatchKeyKid said:

    I'm not a programmer so I can't offer solutions but rather have a question.  By "boolean and bit operations", do you mean that each item corresponds to one bit in a variable byte that you flip once the character encounters the object?  That's how I've always imagined item collection/tracking in 2600 games.   If that's the case, what do you see about that which could use some improvement out of curiosity?

    LatchKeyKid,

     

    I'm not too great a programmer, but using RT's page for Bit Operations at https://www.google.com/search?q="least significant bit" computerhope.com and Boolean https://www.randomterrain.com/atari-2600-memories-batari-basic-commands.html#boolean my plan is below, but I'm sure there is an easier way and not to eat up variables as I'm using Multisprite and plan to adapt it over to DPC in my PacMan games. Hope this and the below explains what I'm trying to do. Plus an example would help in the other game Sequential I'm working on. 

     

    1. There are 8 fruits in PacMan (Cherry, Strawberry, Orange, Apple, Melon, Galaxian, Bell, Key). Then use the Bit Operations to track when collection a fruit. No specific Order. Just trigger {0}, {1}, {2} etc.

     

    2. To unlock Ms. PacMan in room 12. You can enter the room but, she will not appear until all are collected.   

     

        Using: if j{0} && j{1} && j{2} && j{3} && j{4} && j{5} && j{6} && j{7} then TextIndex = p11_text : TextColor = $2E ; Text says "Keys Found".

     

        Using: if !j{0} && !j{1} && !j{2} && !j{3} && !j{4} && !j{5} && !j{6} && !j{7} then return ; if not all keys then return to game.

    • Like 1
  17. Batari Basic Team,

     

    Does anyone have a simple program to track the collection of items? Meaning you have to collect all items before moving on to another section, screen or part of a program? I was  trying to use Boolean and Bit Operations to track when an item is collected. Then once all 8 items are collected trigger an opening. Below is a snippet of what I was trying to do.

     

    __Cherry

     

       ;***************************************************************
       ;
       ;  set up Cherry in room 2. Skips fruit is already eaten. 
       ;

       if _Fruit_Check{0} then return 
       if y then _Fruit_Check{0} = 1 
       player5x = 84 : player5y = 45
       if player0y = 20 then pfscore2 = %11111111
       COLUP5 = $44
       player5:
       %01100000
       %11110110
       %11011111
       %01111101
       %00100111
       %00011010
       %00000001
       %00000000
    end
       return 

     

     

  18. On 9/23/2016 at 12:53 AM, Lewis2907 said:

    Edited as of 16 Nov 2023. I will post new edits here to make it easier as I'm pretty much gotten as far as i can until i get the Atari 2600+ or get my old real hardware fixed. 

     

    Thanks to RT and atari2600land's Batari Man! plus the other stuff I found online at Bb. I have been working on "PacMan Eat N Run" homage to the Pac Man Table Top version around 1981. I had the tabletop version as a kid and loved that game. Just never really saw  it again to play online.

     

    ;```````````````````````````````````````````````````````````````
    ;
    ; Instructions / Gameplay:
    ;

    ; You play as the long time favored Pacman trying to rescue Ms. Pacman. You start with 3 lives and can gain an extra life at 20, 35 & 50 points. There are 25 rooms total in the Maze
    ; Use the joystick to move around and eat the fruit and run as there are no Power Pellets. The goal is to make it to the center room / map and save Ms. PacMan.

    ;

    ; Use the left joy stick to move PacMan around.

    ; Glide along the walls to find the exit to the next room.
    ; Use Select switch to Pause Game. Press the fire button to resume the game.
    ; Use BW switch to bring up the Map. Use the Color switch close Map.

    ; Use the Left Switch A for PacMan to restart at the beginning of the game / original room. (Hard Mode)

    ; Use the Left Switch B for PacMan to just run over the Ghosts and not be reset to the beginning of the game / original room. (Easy Mode)

    ; Use the Right Switch A to disable the Map. (Hard Mode)

    ; Use the Right Switch B to enable the Map. (Easy Mode)

    ; Currently works on the below:

    ; Stella 4.7 from 2016

    ; 2600.emu built 26 Aug 2023 using an Android Phone

    ; No real hardware to test the game (yet)

    ;

    ; Future plans:

    ; Continue working on the Multisprite version as its about 90% complete and playable now.

    ; Attempt to do a Standard Kernel version. I saw an example  on how to make a  a few sprites "appear" on the screen at the same time. That will be a challenge.

    ; Port these over to 7800 basic as I have just started to learn how to code some there.

    ; Please provide feedback as always.

    ;

    ; About me:

    ; Darrell Lewis aka Lewis2907. I started using Batari Basic back on 27 Nov 2015 while deployed to Afghanistan a second time. Now I'm a LTC in the Army Reserves.

    ; I was finally able to find something I could understand and sort of self teach myself since it was similar to Basic I learned in elementary school back in the 80's.

    ; Now I have been able to experiment and learn to make some games. Thanks to everyone who has helped me learn along the way.

     

    The YouTube Table Top PacMan Video

     

     

     

    20231116_Pacman_Eat_n_Run_DPC.bas.bin 32 kB · 0 downloads

     

    • Like 1
×
×
  • Create New...