Jump to content

nanochess

+AtariAge Subscriber
  • Posts

    7,041
  • Joined

  • Last visited

  • Days Won

    21

nanochess last won the day on October 27 2022

nanochess had the most liked content!

About nanochess

  • Birthday November 4

Profile Information

  • Custom Status
    Coding something good
  • Gender
    Male
  • Location
    Mexico City
  • Interests
    MSX, Colecovision, Atari VCS/2600, Intellivision, Sega Master System, TI-99/4A, NES.
  • Currently Playing
    Mr. Chess for Intellivision ;)
  • Playing Next
    I should make something new! ;)

Recent Profile Visitors

53,038 profile views

nanochess's Achievements

Quadrunner

Quadrunner (9/9)

7.7k

Reputation

  1. Thanks for the info! I'll be patched in the next version. In the meanwhile it can be done as you posted, or with this conditional definition to make it portable: .1: if SG1000 NOP ; 4 t-states (this is required to wait 29 t-states minimum) endif OUTI ; 16 t-states (18 on MSX/Coleco) JP NZ,.1. ; 10 t-states (11 on MSX/Coleco)
  2. If your game is already coded in assembler, you could have a guide watching my translation layer to assemble both a game for Colecovision and MSX: https://nanochess.org/viboritas.html
  3. The mystery grows with Bouncy Cube 😉
  4. I'm astonished by the graphic details. Well done! I haven't tested in real hardware, but I remember the default controller stick isn't very good for diagonals. I could suggest an optional interface using the keypad as a compass rose.
  5. It's based on the Colecovision, but includes instructions to run the programs on MSX and SG1000. So yes, the book is multi-system because the programs are highly portable (joystick in Colecovision/SG1000/MSX, and also cursor keys in MSX) Notice that the Colecovision's keypad isn't available in SG1000, and currently, there is no way to use the MSX keyboard unless you code extra subroutines.
  6. The mystery deepens with the companion Space Raider.
  7. If you use a label inside CVBasic it is added the prefix cvb_* For example, game_bitmaps becomes cvb_GAME_BITMAPS. CVBasic turns all names into uppercase. So maybe you need to provide these to your editor. I don't know about compatibility with the MSX/Coleco sprite editor. Maybe @Tony Cruise can test a little with CVBasic.
  8. Hi everyone. I've been working in this game but not for making a cartridge. It's one of the games that will appear with full source code in my next book Stay tuned for more info!
  9. These were never displayed on any computer, except if you POKE'ed directly on video screen, or you used CHR$(1) (not available in CVBasic because there exists VPOKE)
  10. This game was made by @newcoleco maybe you should chime to ask for help.
  11. If you want to change only a single text, you need to copy the letters for this text into another part of the character set and change their color. In this case, I define the letter A as character 1 (the portion 0-31 is unused in the default mode 0). You could copy the whole alphabet if required. DEFINE CHAR 1,1,letter_a_bitmap DEFINE COLOR 1,1,letter_a_color VPOKE $1800+72,65 ' Normal A letter VPOKE $1800+104,1 ' Colored A letter WHILE 1: WEND letter_a_bitmap: BITMAP "..X....." BITMAP ".X.X...." BITMAP "X...X..." BITMAP "X...X..." BITMAP "XXXXX..." BITMAP "X...X..." BITMAP "X...X..." BITMAP "........" letter_a_color: DATA BYTE $90,$90,$90,$90,$90,$90,$90,$90 It depends on your approach to horizontal scrolling. For my next book, I'll show how to make fast horizontal scrolling with platforms and obstacles. The design eases scrolling as only two characters need to be updated per item (two floors and two obstacles). Also, it isn't noticeable that the scrolling is in tiles because it scrolls at 30 frames per second and that's enough to look like smooth scroll. If you want to make a full-screen scrolling with graphics you can use a map in memory that you could copy with SCREEN, and switch hidden pages like I proposed here.
  12. I see what you required. RESTORE currently doesn't allow for variable pointers. Another option is using: size = PEEK(#pointer) : #pointer = #pointer + 1 That's a very nice game! Kudos!
  13. Sorry, I didn't see this post earlier. The problem here is that your label definition says level_pointers instead of #level_pointers (the # makes it a different label), besides the VARPTR is wrong. It should be: #level_pointers: DATA VARPTR level1(0), VARPTR level2(0) This is because your VARPTR is giving a pointer to a variable, instead of an array, and also the names were wrong.
  14. I still cannot understand how I enjoyed at the time Burgertime, Donkey Kong, Congo Bongo, Columbia Invaders, Double Dragon, Space Quest, and others! And I'm talking about CGA 4 colors and only the internal speaker sound! I was in awe!
×
×
  • Create New...