This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - Quigibo
Pages: 1 ... 91 92 [93] 94 95 ... 135
1381
« on: June 05, 2010, 11:15:38 pm »
Sounds like it could possible be a bug in the snake game. It sounds like the snake game might be using the backbuffer and expects it clear before running the game, maybe try clearing the buffer AND the backbuffer first? ClrDraw:ClrDrawr
But its more likely you accidentally deleted some other code. Also, when you say flashing, do you mean grayscale-like flashing, or a back and forth type of flashing?
1382
« on: June 05, 2010, 09:55:40 pm »
I don't think that rule is needed at all since the entries will be compiled by the judges to ensure legitimacy, the executable alone can't be acceptable as an entry anyway.
Also, as far as using other people's code, I think a good rule of thumb is this: If you can tell that entries look too similar to existing public projects without even looking at the source it will probably affect your originality score. But, if you use someone else's code, even if you use a lot of it, but use it in a unique and creative way, then there is no problem with that.
1383
« on: June 05, 2010, 07:25:06 pm »
Absolutely. Also, the 4 level is more convenient since you no longer use the "Setup" command, it is automatically initialized if it detects it has not yet been initialized just like the 3 level.
1384
« on: June 05, 2010, 07:22:06 pm »
The cool thing about subroutines is that you don't need to understand the code. Once you know what the subroutine does, you just put it everywhere you need it and never think twice about it.
1385
« on: June 05, 2010, 07:15:26 pm »
Also, the 4-level grayscale routine itself was kind of slow. I have changed that now for the next update and also the 3 level routine so they are much faster and better looking than before. I even managed to get 3 color gameboy gray (completely flickerless) with more than a few things happening at once.
1386
« on: June 04, 2010, 01:53:29 pm »
Try this. You can flash the red pixels on and off for the flame.
1387
« on: June 04, 2010, 01:37:17 pm »
I think this subforum and randomness don't increase post counts but the other ones do.
Welcome here!
1388
« on: June 04, 2010, 01:34:27 pm »
That's becasue the symbol table also holds a copy of the size and the OS uses that when calculating how much ram you have. I'm almost certain that there is no one location that holds the current ram amount. Instead, I think the bcall calculates the ram available by reading through the entire symbol table each time.
By the way, I think this has kind of gone off topic since this thread is mainly for sharing projects.
1389
« on: June 04, 2010, 01:26:25 pm »
Oh, that's even worse! Are you positive it wasn't the result of a buggy program accidentally messing up the symbol table prior to using the app? It doesn't still error after archiving everything and doing a ram clear does it? I kind of doubt an error like this could have gone unnoticed for so long.
1390
« on: June 04, 2010, 01:18:43 pm »
Yeah, it should be able to read archived source files now. But it definitely shouldn't crash the calc. I don't know why it would do that... but again, this is a temporary feature.
1391
« on: June 04, 2010, 03:53:34 am »
:.Input: :.D = x-position :.C = y-position :.Ans = tile to store there : :Lbl ST :→E :C*120+(D/2)+data→C :If D^2 :{C} and 240+E→{C} :Return :End :{C}^16+(E*16)→{C} :Return Note that that 240 is actually the decimal for b11110000 (a high nibble mask) and has nothing to do with the the map size.
1392
« on: June 04, 2010, 03:15:24 am »
What is that last number? You shouldn't have "L" in your code anymore since you're using X and Y instead. Also, I can't really help without seeing the code you're using.
EDIT: nevermind, saw your edit, will look at code.
EDIT2:
:{*120+(D/2)}→C
should be
:{*120+(D/2)+Q}→C
1393
« on: June 04, 2010, 02:51:29 am »
At what values of X and Y do you see garbage? Also, you mentioned before that you were going to fill the appvar with the 0 tile before looking at it, was that implemented in your test?
1394
« on: June 04, 2010, 01:14:54 am »
Alright, I made a big modification. Its now only 7 bytes larger than the original routine now, still doesn't need to be initialized, and is significantly faster and better looking, but still just slow enough to work on any LCD without having to run fixer programs.
The only downside is that I use a shadow register. That means this command should NEVER be used in an interrupt routine. That's alright though becasue you should never have LCD commands inside of an interrupt anyway. Its much better to just have the interrupt control a counter and then your drawing routine updates the LCD depending on the counter.
Let me know if this can be optimized more and still run on the slower LCDs.
p_Disp4Lvl: di ld a,$80 out ($10),a ld (OP1),sp ld sp,appbackupscreen - plotSScreen ld e,(plotSScreen-appbackupscreen+12)&$ff ld c,-$0C ex af,af' ld a,%11011011 inc (iy+asm_flag2) jr z,__Disp4Lvlskip add a,a ld hl,(flags+asm_flag2) inc l jr z,__Disp4Lvlskip rlca ld (iy+asm_flag2),-2 __Disp4Lvlskip: ld l,plotSScreen&$ff-1 ex af,af' __Disp4Lvlentry: ld a,c add a,$2C ld h,plotSScreen>>8 inc l ld b,64 out ($10),a __Disp4Lvlloop: ld a,(hl) add hl,sp xor (hl) ex af,af' cp e <-- Epic coincidence that e just happened to be between 182 and 219 rra ld d,a ex af,af' and d xor (hl) out ($11),a ld d,(plotSScreen-appbackupscreen+12)>>8 add hl,de djnz __Disp4Lvlloop inc c jr nz,__Disp4Lvlentry __Disp4LvlDone: ld sp,(OP1) ei ret __Disp4LvlEnd:
1395
« on: June 04, 2010, 12:22:05 am »
This part just gets the byte of the tile. You have to divide the x-value by 2 since the map is actually half the width due to compression. :{Y*width+(X/2)}→C
The next part decides whether to read the left nibble or the right nibble. Basically if the x-value is even you want the left one and if its odd you want the right one. :If X^2
This returns the right one times 8. Multiplied by 8 since you are going to use this most likely as an offset from the start of a sprite list. :C^16*8
Same thing, but this one is the left nibble. :C/16*8
I think I made a mistake with the original routine, I mixed up the ^ and the /. Fixed it now
Pages: 1 ... 91 92 [93] 94 95 ... 135
|