Jump to content

texacala

Members
  • Posts

    126
  • Joined

  • Last visited

Everything posted by texacala

  1. I'm working on a scrolling routine but the catch is that the screen memory is in 2 separate blocks of RAM. So I have 2 LMS instructions in my custom display list. What I want to do is scroll the first block (subtracting 40 bytes from screen address following LMS) but also subtract one mode line from the second block and add it to the first block. That makes 6 bytes to change at most in the DL. I wrote most of the code last night to do it, but I am unclear as to the best way to makes the changes without screen flicker/problems. Hope this helps explain a bit better. Also, I've never programmed using DLI or VBI before, still learning
  2. So if I follow, once a custom display list is running, I can change some of the bytes in the list without creating screen flicker or other problems? Or am I supposed to peek VCOUNT before I make any changes?
  3. I need help with modifying a display list in assembly. I want to change an LMS instruction address and some mode lines, about six bytes total. Should I just LDA, STA those six bytes in the display list or should I turn off ANTIC, modify the bytes, turn ANTIC back on? Or maybe change the JVB address to point to new list? I'm not sure what the best practice is here without garbling the screen. Thanks in advance for any reply.
  4. Commando's sequel, Mercs, was ported to the C64 and Amstrad but I've read they are pretty terrible. The Genesis port is terrific and arguably better than the arcade version. I'd love to see this game ported to the A8 based on that version. And yeah, Ikari Warriors would be incredible on the A8-- I think it it could get close to the 7800 version and completely beat out both C64 ports. And how about a port of Guerilla War? That is an *amazing* 8-bit game
  5. Ah, that makes sense, I hadn't thought about mixing fine/coarse like this. Thanks for everyone's comments; this should be enough to get me started!
  6. Ok, if I'm following, is it correct that you can only vertical fine scroll in one direction? That is, VSCROL lets you scroll zero to 16 scanlines (mode line dependent) but is there a provision to move up or down? Coarse scrolling allows both directions via adding or subtracting a line length. Maybe I'm not understanding how VSCROL works though.
  7. Vertical fine scrolls can be used by setting Bit 5 of each display list instruction and enabling VSCROL at $D405. Does that mean the LMS instruction too? And after setting up, do I scroll by adding or subtracting 40 to the top of the screen address (just like coarse scrolling)? Or is the scroll itself performed by poking to $D405?
  8. I guess I learned to love my dog in spite of his limitations (one of which being he's nine inches tall), so ok, there's hope yet! So... if I want to vertical scroll over 8K or so of screen RAM, and my screen crosses a 4K boundary (which it eventually will), do I have to keep modifying my Display List every coarse scroll in order to add a second LMS instruction in the correct place? In other words, if the beginning of the screen RAM keeps changing position (moving the screen over RAM), does the DL have to be modified each time as well? I fear so...
  9. Thanks guys, that solved the problem-- I just moved the start of screen RAM to $4000 and voilà, fixed. I think I'm developing a love/hate relationship with ANTIC.
  10. Ah ha! I think that's it. I read about this problem in De Re Atari but I thought the boundary meant only 4k total per screen. In other words in Antic D, 96 mode lines with 40 bytes per line yields 3840 bytes per screen. But I think what you are saying is the way my screen RAM is positioned, my screen is only between $5D00 and $6000? Is that the boundary?
  11. Well, I thought I was on the right track, *until* I started drawing to the screen. Here is my current version: DLIST .BYTE $70,$70,$70,$4D,$00,$5D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D,$0D .BYTE $0D,$0D,$0D,$0D,$0D ; 95 ANTIC D Mode lines .BYTE $41; Jump to beginning of Display List .WORD DLIST ; This should automatically calculate where DLIST begins INITDL ; first load in colors LDA #0 STA $02C8 ; Color4 background black LDA #4 STA $02C4 ; Color0 medium gray LDA #10 STA $02C5 ; Color1 light gray LDA #148 STA $02C6 ; Color2 blue LDA #0 ; Now run the display list STA $022F ; Turn off ANTIC LDA #DLIST&255 STA $0230 ;Store starting address of custom Display List - low byte LDA #DLIST/256 ; High byte STA $0231 ; Storing High byte LDA #$22 STA $022F ; Turn ANTIC back on RTS Now I planned on clearing out about 2 Antic D screens of memory with: CLRSCR ; Clear the screen RAM, 30 pages, about 2 ANTIC D screens MEMTOCLR = $B0 ; Page Zero address to index - Lo Byte LDA #$00 STA MEMTOCLR ; Lo Byte of start of Screen RAM LDA #$5D STA MEMTOCLR+1 ; Hi Byte of start of Screen RAM LDA #0 ;RAM will be cleared with zeros LDX #30 ;# of pages to clear LOOP2 LDY #0 ;Countdown timer LOOP1 STA (MEMTOCLR),Y ; Indexing $5D00 + Y DEY ;Countdown starts at 255 BNE LOOP1 ;when we fall through to here we have cleared one page INC MEMTOCLR+1 ;prepare to clear the next page DEX ;decrease page counter BNE LOOP2 ;if not zero, jump back and clear another page RTS Ok, no errors, but then here's the problem: If I draw to the screen using LDA #102 (or something similar) instead of LDA #0 above, I only draw 18 mode lines and then nothing else. It's as if my Antic D screen is only 18 modes total or so and then vanishes. So something must be off with my display list. Did I miss an instruction somewhere? I think my loops are counting correctly, it's the screen memory that's messed up somehow.
  12. I wanted to say a big thank you for WUDSN-- I use it almost every night now and talk about a fabulous learning environment! I can't tell you how excited I was to see my bullets being animated all over the screen. I know I would be learning Assembly at a much slower pace if it wasn't for this development environment and Altirra. Thanks again
  13. Well, I replaced the ink cartridge but still no printing. The paper loads and acts like it's about to print, but then the power light starts flashing. The printer may just not work at all, but there's no self test mode and I can't see how I'd connect it to my PC as there's no USB port, only parallel. Looks like I'm in the market for a Laserjet.
  14. Ballblazer. Missile Command (at a high level). Star Raiders. Sorry, that's already three.
  15. Thanks guys for the info. The manual says the printer should be compatible with the Deskjet 500 and command language is PCL Level 3 with extensions. So it should work... However, no mention of an Epson compatible mode that I can find. The print head does move back and forth (!) but I think the ink cart is dry from years of disuse
  16. I inherited an HP Deskjet 400 (made in 1997) that I thought I'd try out with my 130 XE. I plugged my MPP 1150 Printer Interface into my computer, my NUXX, and printer. The NUXX fired right up and I typed LPRINT "please work" in BASIC and the paper advanced! But no text. Then I tried printing with Last Word (using default LW.PDR driver) and the operation timed out. Unfortunately, there are no printer codes listed in the manual. It does indicate that there are some built-in internal fonts which made me think it might work. Am I barking up the wrong tree with this? Any driver out there that might work?
  17. Looks incredible! Crossing fingers it will run my NTSC computer...
  18. @orpheuswaking: ANALOG reviewed Dark Crystal back in the day and gave it a mixed review, but I think it looks interesting too, very ambitious to say the least! I've got the disks, so I'll fire it up at some point and let you know.
  19. I think Gunslinger is spread across six disk sides. I can't think of any others right now (maybe The Dark Crystal?) I've wondered too about how to play AR with the NUXX. I still have to try it out.
  20. Crest White Toothpaste: Pros: -easy over the counter purchase -leaves your Atari with a minty fresh scent -you can brush your teeth while you work Cons: -might be quite expensive compared to peroxide -might not actually work at all -risk of others' stares while you apply toothpaste to your computer
  21. So did Tom Hunt port certain text adventures to the A8, or did he write a general app that will run any v3 titles?
  22. This stuff is great, so helpful. I'm starting to understand more and actually enjoy working on this! I'm sure I'll have more questions but I hope to help someone else down the road as you guys are helping me.
  23. Yeah, that's been my thinking as well. I want to attempt to come to grips with ATASM first before I move to MADS.
×
×
  • Create New...