Endless Runner 2600
-
Content Count
11 -
Joined
-
Last visited
Posts posted by Endless Runner 2600
-
-
How would I draw the player using PF1?
-
That's not the issue. The issue is if someone else is already making the same game, there's no point in having 2 games that play exactly the same. I can try to recover my source code and see what happens, but no guarantees. Thanks for removing the source files.I deleted your files I uploaded in my comment in order to respect your wish to delete your program. If you ever want them back, send me a PM.
I'm just very puzzled by this thread. Development for the 2600 is hard. It requires an extraordinary level of patience and rework. In many ways it's very different from traditional game development, but in other ways it's identical. My game isn't complete, but it's getting close. The lessons I've learned from this unusual series of problems have made it a very satisfying intellectual challenge. I'm only just scratching the surface. I'm still working out how 2600 shoot'em ups manage to multiplex so many sprites. It's one giant puzzle of lots of smaller puzzles, which appeals to me a lot. It requires a level of stubbornness and resilience to frustration. I suggest you keep trying. There's no requirement that your final game design be the same as the initial design. You could end up with a completely different game, and nobody is going to judge you for it. If it's turning out not to be your cup of tea, that's fine too. There's plenty of other platforms you can code for.
-
I'm sorry, but I deleted all the source code already. As I said the project has already been canceled.I was replying right as you updated. What I meant by refactoring is the 3rd PosObject call just needed to happen after the digits were drawn.
Also, there are a lot of 2600 games that are similar, because the nature of the hardware forces the same limits one every game. I wouldn't worry about it. I think a bunch of projects end up being something different from what they started out as, because you find out some designs either won't work or you think of better game elements that change the dynamic of the game.
-
This sounds very complicated is there a tutorial?The way I would do it would be setting the playfield to reflect mode and using PF1 to draw the main character, since it doesn't move left or right, only up and down. Then I could use both player objects to draw the enemies at quad size, allowing 2 enemies on screen at a time, per row. This would allow adding elements like multiple enemies with different colors, pickup items, etc.
This would require changing the playfield color twice on every scanline, so the playfield could be drawn in the player's color on the left side, but the right side would be the same as the background color to make it invisible.
Both missile objects would also be free, in case you wanted to add a shooting element to the game. Lots of possibilities!
You could also scale down the size of the players to allow more on-screen at a time using NUSIZ to copy the players, but the playfield could not also be scaled down.
I am actually working on a similar concept, but at a different scale. You can check out my project thread, if you are interested. I haven't posted in awhile, but have been doing some work in it lately.
Also, when you post a large piece of code (50+ lines or so), it's a good idea to include it as a file.
Edit: Actually since your working on something similar anyways, nevermind I canceled the project.
-
Project Cancelled
-
1
-
-
Got a response from the author.
Quote:
"""
Hi,
This is Gustavo. I work with the Pikuma team and I am the author of the Atari2600 course. Thanks for the message.
The course is currently being sold as $11.99, but Udemy takes the extra money they are charging to themselves.
That is why the price on Udemy is more expensive than the one on the Pikuma website. Udemy adds approximately 50% on top of every course and keeps the % to themselves.
Since Pikuma.com is the home of the Atari2600 course, there is no % added to the original $11.99.
Let me know if that helps.
"""
So if you still want to get the "Udemy features", be prepared to pay an additional $8 to line Udemy's fat wallets.
-
Project Canceled
-
I'm trying to use the sleep macro inside the macro.h header. Here is the code:
; SLEEP duration ; Original author: Thomas Jentzsch ; Inserts code which takes the specified number of cycles to execute. This is ; useful for code where precise timing is required. ; ILLEGAL-OPCODE VERSION DOES NOT AFFECT FLAGS OR REGISTERS. ; LEGAL OPCODE VERSION MAY AFFECT FLAGS ; Uses illegal opcode (DASM 2.20.01 onwards). MAC SLEEP ;usage: SLEEP n (n>1) .CYCLES SET {1} IF .CYCLES < 2 ECHO "MACRO ERROR: 'SLEEP': Duration must be > 1" ERR ENDIF IF .CYCLES & 1 IFNCONST NO_ILLEGAL_OPCODES nop 0 ELSE bit VSYNC ENDIF .CYCLES SET .CYCLES - 3 ENDIF REPEAT .CYCLES / 2 nop REPEND ENDMHowever when I try to assemble it get the error:
--- Unresolved Symbol List
NO_ILLEGAL_OPCODES 0000 ???? (R )
--- 1 Unresolved SymbolHere is the output log:
START OF PASS: 1 ---------------------------------------------------------------------- SEGMENT NAME INIT PC INIT RPC FINAL PC FINAL RPC f000 f000 RIOT [u] 0280 0280 TIA_REGISTERS_READ [u] 0000 0000 TIA_REGISTERS_WRITE [u] 0000 0000 INITIAL CODE SEGMENT 0000 ???? 0000 ???? ---------------------------------------------------------------------- 15 references to unknown symbols. 20 events requiring another assembler pass. - Expression in mnemonic not resolved. - Label defined after it has been referenced (forward reference). --- Unresolved Symbol List NO_ILLEGAL_OPCODES 0000 ???? (R ) --- 1 Unresolved Symbol START OF PASS: 2 ---------------------------------------------------------------------- SEGMENT NAME INIT PC INIT RPC FINAL PC FINAL RPC f000 f000 RIOT [u] 0280 0280 TIA_REGISTERS_READ [u] 0000 0000 TIA_REGISTERS_WRITE [u] 0000 0000 INITIAL CODE SEGMENT 0000 ???? 0000 ???? ---------------------------------------------------------------------- 1 references to unknown symbols. 0 events requiring another assembler pass. --- Symbol List (sorted by symbol) 0.DigitPointerLoop f05f (R ) 0.divideby15 f017 (R ) 0.FREE_BYTES 0000 1.CYCLES 0028 (R ) AddScore f033 ApplyGravity f16f (R ) AUDC0 0015 AUDC1 0016 AUDF0 0017 AUDF1 0018 AUDV0 0019 AUDV1 001a BLACK 0000 (R ) BROWN 00f0 (R ) CheckActivatePlayer f136 ClearRAM f0e3 (R ) COLUBK 0009 (R ) COLUP0 0006 (R ) COLUP1 0007 COLUPF 0008 (R ) CTRLPF 000a CXBLPF 0006 CXCLR 002c CXM0FB 0004 CXM0P 0000 CXM1FB 0005 CXM1P 0001 CXP0FB 0002 CXP1FB 0003 CXPPMM 0007 Digit0 f000 (R ) Digit1 f002 (R ) Digit2 f004 (R ) Digit3 f006 (R ) Digit4 f008 (R ) Digit5 f00a (R ) DigitsFont f200 (R ) DrawDigits f085 DrawDigitsLoop f0a0 (R ) DrawDigitsLoopCounter f00c (R ) ENABL 001f ENAM0 001d ENAM1 001e fineAdjustBegin f024 (R ) fineAdjustTable ef33 FinishPlayer f153 (R ) FLOORY 0015 (R ) GetDigitPointers f05b GRP0 001b (R ) GRP1 001c (R ) HMBL 0024 HMCLR 002b HMM0 0022 HMM1 0023 HMOVE 002a (R ) HMP0 0020 (R ) HMP1 0021 INPT0 0008 INPT1 0009 INPT2 000a INPT3 000b INPT4 000c (R ) INPT5 000d INTIM 0284 (R ) MainLoop f0f9 (R ) NO_ILLEGAL_OPCODES 0000 ???? (R ) NUSIZ0 0004 NUSIZ1 0005 OverScanWait f177 (R ) PF0 000d (R ) PF0Data f300 (R ) PF1 000e (R ) PF1Data f400 (R ) PF2 000f (R ) PF2Data f500 (R ) PlayerBuffer f00e (R ) PlayerGraphic f17f (R ) PLAYERX 001e (R ) PlayerY f00f (R ) PosObject f014 (R ) REFP0 000b REFP1 000c RESBL 0014 RESM0 0012 RESM1 0013 RESMP0 0028 RESMP1 0029 RESP0 0010 (R ) RESP1 0011 RSYNC 0003 ScanLoop f12f (R ) Score f010 (R ) SkipActivatePlayer f140 (R ) SkipJetpack f116 (R ) Start f0dc (R ) SWACNT 0281 SWBCNT 0283 SWCHA 0280 SWCHB 0282 T1024T 0297 Temp f013 (R ) TIA_BASE_ADDRESS 0000 (R ) TIA_BASE_READ_ADDRESS 0000 (R ) TIA_BASE_WRITE_ADDRESS 0000 (R ) TIM1T 0294 TIM64T 0296 (R ) TIM8T 0295 TIMINT 0285 VBLANK 0001 (R ) VDELBL 0027 VDELP0 0025 VDELP1 0026 VERSION_MACRO 006a VERSION_VCS 0069 VisiblePlayerLine f00d (R ) VSYNC 0000 (R ) WaitForVblankEnd f124 (R ) WSYNC 0002 (R ) YELLOW 001c (R ) --- End of Symbol List. --- Unresolved Symbol List NO_ILLEGAL_OPCODES 0000 ???? (R ) --- 1 Unresolved Symbol Complete.I'm using DASM 2.20.11 20040304 if that helps. Any ideas on what the issue could be?
-
Is there a tutorial or guide for displaying a 4 digit score, cause I tried searching the forums and couldn't find any tutorials. I looked for videos on youtube and also couldn't find any.
-
I just tried contacting the author to see if he is willing to offer a discount for the Udemy version so it costs the same as the website version. I will let you know as soon as I hear back.

6 Digit Score Display Not Working
in Atari 2600 Programming
Posted