Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

389 Excellent

About kenjennings

  • Rank
  • Birthday 07/01/1966

Contact / Social Media

Profile Information

  • Custom Status
    Me + sio2pc-usb + 70 old floppies
  • Gender
  • Location
    Florida, USA
  • Interests
    C programming, computer graphics, unix/linux, retro gaming, Atari 8-bits and Amiga
  • Currently Playing
    atasm -- Mac/65 with all the joy and none of the line numbers.
  • Playing Next
    atasm (Mac/65) Is there any better "game"?

Recent Profile Visitors

12,212 profile views
  1. Is (was) the table guaranteed to stay there? Would it be safer-ish, more compliant to get it from the open E: IOCB #0 table? I've seen it done this way: IOCB = $0340 ; Base IO Control Block, Channel 0, E: by default ICPTL = IOCB+$06 ; Put char routine (low) ICPTH = IOCB+$07 ; Put char routine (high) ; . . . . . PutCH sta OUTPUT ; Self modifying code - save the byte below. lda ICPTH ; High byte for Put Char in E:/IOCB Channel 0. pha ; Push to stack lda ICPTL ; Low byte for Put Char in E:/IOCB Channel 0. pha ; Push to stack OUTPUT = *+1 lda #$00 ; Modified at routine entry. ; This rts actually triggers calling the address of PutCH ; that was pushed onto the stack above. rts
  2. Links to the articles in both ANTIC and ANALOG are here: The BASIC code to set up the synthesizers is the same for both. (Same data lines, same control/status lines), so it appears they are identical.
  3. I was wondering.... since you have four character sets. And you use a different characterset per line, but repeat the usage six times... 0 1 2 3 0 1 2 3 . . . Wouldn't it be the same as just using one character set for six contiguous lines before switching character sets... 0 0 0 0 0 1 1 1 1 1 1 . . . Then there are fewer DLIs that need to change the current CHBAS. Thanks, Ken
  4. The ship from the Asteroids arcade game screams Atari. (Not necessarily Atari 8-bit)
  5. Side by side in opposite directions....... I can't think of a way to do that in hardware. Maybe I lack imagination. Pretty sure that would have to be done the hard way by actually drawing/updating the screen memory itself. Maybe shifting images through a character set. Either way it is still brute force code churning through memory.
  6. I love Aldi's. That's the only place in South Florida that carries awesome groceries from Germany. (My kid had to explain family heritage for a school project, and we spent days looking for a place to buy spaetzle.)
  7. There's also the duck-boy in Escape From Epsilon...
  8. I like the player from Mountain King, wearing the crown. But, I'm like one of five people left alive who like that game.
  9. Yet another bad branch condition. Reassembled and re-uploaded. It does not change the addresses for routines above.
  10. That's the one I was thinking of. I was bored at work and ported this to the PC and updated it to sort and draw filled triangles. Pretty sure that disk is gone. Then Turbo Silver came out on the Amiga and I stopped trying to write my own graphics software.
  11. Of course it was broken. I realized in the middle of the day that the DEC and flag checks for decrementing the length were a broken, stupid idea. Rebuilt. https://github.com/kenjennings/Atari-CheepTalk USR(39680) is the CheepTalkInit routine for BASIC. USR(39728, ADR(STRINGVARIABLE), LEN(STRINGVARIABLE) ) is the CheepTalkSpeech routine for BASIC to pass the address and length of the phoneme string to the VBI. PEEK(39883) is a status byte that BASIC can check to see if the VBI is busy running the speech.
  12. Just about done with V3. Cut out a number of the ridiculously fast speed levels, so it is playable by mere humans with retired old people reflexes. Last thing I'm working on it some weird screen flash when the frog reaches the safe beach at the top of the screen. It doesn't crash, and it doesn't do the glitch every time. But I need to find it for OCD reasons. It's a pretty game but gets boring quickly. Gameplay is intentionally limited to the scope of the original Pet game on purpose. If I feel motivated to continue on to V4 that will add new things not done in the prior versions -- other hazards, more animated things, etc.
  • Create New...