Scrolling tile RPG
Posted: Thu Jul 31, 2008 5:20 pm
Hello everyone,
I've been working on a QBasic RPG for quite a few years now. It uses a smooth scrolling map (ie Final Fantasies for the SNES), but the one thing that's always bugged me is that I just can't get it to scroll smooth enough. Right now, my tiles are saved in string files, so that all I have to do is load each tile from the file and then DRAW it anywhere I want. It works great, and looks great, but isn't the fastest.
The reason I went with this route is because using the GET and PUT commands cause an error if any portion of it is printed outside of the VIEW SCREEN. If my tiles are 20 x 20, and I try to place a tile at (310, 100), it obviously errors.
The other method I tried using was PSET, where it draws every pixel of every tile individually when the screen moved, but this was WAAAAAY to slow.
Does anyone know a way to use GET and PUT and have them outside of the VIEW SCREEN? This would really help. If not, does anyone know some assembly code I could use to create my own fast GET and PUT that would print outside the VIEW SCREEN? I would really rather not use libraries.
Thanks for any help! I've just put a lot of work into it and it would suck to just have it unplayable because its annoying to look at.
I've been working on a QBasic RPG for quite a few years now. It uses a smooth scrolling map (ie Final Fantasies for the SNES), but the one thing that's always bugged me is that I just can't get it to scroll smooth enough. Right now, my tiles are saved in string files, so that all I have to do is load each tile from the file and then DRAW it anywhere I want. It works great, and looks great, but isn't the fastest.
The reason I went with this route is because using the GET and PUT commands cause an error if any portion of it is printed outside of the VIEW SCREEN. If my tiles are 20 x 20, and I try to place a tile at (310, 100), it obviously errors.
The other method I tried using was PSET, where it draws every pixel of every tile individually when the screen moved, but this was WAAAAAY to slow.
Does anyone know a way to use GET and PUT and have them outside of the VIEW SCREEN? This would really help. If not, does anyone know some assembly code I could use to create my own fast GET and PUT that would print outside the VIEW SCREEN? I would really rather not use libraries.
Thanks for any help! I've just put a lot of work into it and it would suck to just have it unplayable because its annoying to look at.