Show Posts

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 - ben_g

Pages: 1 ... 68 69 [70] 71
1036
Other / Re: Favorite OS's
« on: May 18, 2011, 03:15:46 pm »
I have the Windows7Ultimate 64bit installed on my computer, and it's...... Horrible. It crashes very often (got the 'blue screen of death more than 20 times in a year) and is incompatible with many applications (I had to google for hours to find a z80 assembler thatr worked on it). So I voted for windowsXP: my previous OS that has never crashed on my pc

1037
General Calculator Help / Ti-84 plus operating systems
« on: May 18, 2011, 03:08:37 pm »
Hi everybody,

I just noticed the download links to different OSes of the ti-84 plus
I am using Os 2.22, but I found 2.43 and 2.55. So i want to know: has enybody ever tried these OSes, and what are the new features? And how's the compatibility for asm programs?

1038
Ash: Phoenix / Re: [A:P] Demo Release/Discussion
« on: May 17, 2011, 03:45:04 pm »
This is the door that you found in the middle of the field, right? In the demo, that area is not yet coded, so walking around in there would cause bugs as you discovered.
Yes, It was that area. Sometimes, when walking around in that area sends you back to the door you came from, but when you try to walk back to the palace, you'll end up at the same door again. also, there are monsters of level 255 someware. It enters fight mode as normally, and when you try to run, it says 'failed' and you will die, but if you attack the monster, you'll end up in an area with horizontal lines where you can't move.

But as this is still a demo, and as the area isn't coded, bugs can occur indeed.

I can't wait until the first full release, or the next domo :)

1039
I don't think I will join as I only get very simple stuff to work with axe.

btw: I think the poll isn't working, clicking the answers doesn't do anything...

1040
ASM / Re: my routine clears ram
« on: May 16, 2011, 03:49:41 pm »
All of the calls made in the 3DTo2D part are also used in the InitView part. The number of pushes and pops are the same, and the vars are defined in the program memory, so I still don't know why it clears the ram.

Maybe my own math routines aren't really doing what they should do, so does enybody here have some code on their hard drive for 16bit 8.8 fixed point signed addition, substraction, multiplication and division?

EDIT: I double-checked all my routines, then tripple-checked them, then tested every routine on it's own, and I have found out that the code below clears the ram, but I still don't know why :(
Code: [Select]
3DTo2D:
  ld a, 0
  ld (valid), a
  ld bc, (xpoint)
  ld de, (xfrom)
  call SubFP
  ld (xpoint), de
  ld bc, (ypoint)
  ld de, (yfrom)
  call SubFP
  ld (ypoint), de
  ld bc, (zpoint)
  ld de, (zfrom)
  call SubFP
  ld (zpoint), de
  ld hl, (xpoint)
  ld bc, (xto)
  call MulFP
  push de ;1
  ld hl, (ypoint)
  ld bc, (yto)
  call MulFP
  pop hl ;0
  add hl, de
  push hl ;1
  ld hl, (zpoint)
  ld bc, (zto)
  call MulFP
  pop hl ;0
  add hl, de
  push hl ;1
  ld a, l
  ld c, a
  ld a, (min_range)
  ld b, a
  ld a, c
  cp b
  ret c
  ld c, a
  ld a, (max_range)
  ld b, a
  ld a, c
  cp b
  ret nc
  ld a, 1
  ld (valid), a
  ld hl, (xpoint)
  ld bc, (xcross)
  call MulFP
  push de ;2
  ld hl, (ypoint)
  ld bc, (ycross)
  call MulFP
  pop hl ;1
  add hl, de
  push hl ;2
  ld hl, (zpoint)
  ld bc, (zcross)
  call MulFP
  pop hl ;1
  add hl, de
  pop de ;0
  push de ;1
  call DivFP
  ld (screenx), hl
  ld hl, (xpoint)
  ld bc, (xup)
  call MulFP
  push de ;2
  LD HL, (ypoint)
  ld bc, (yup)
  call MulFP
  pop hl ;1
  add hl, de
  push hl ;2
  ld hl, (zpoint)
  ld bc, (zup)
  call MulFP
  pop hl ;1
  add hl, bc
  pop de ;0
  call DivFP
  ld (screeny), hl
  ld hl, $0100
  ld de, (screenx)
  add hl, de
  ld bc, $5F00
  call MulFP
  ld (screenx), de
  ld hl, $0100
  ld de, (screeny)
  add hl, de
  ld bc, $4100
  call MulFP
  ld (screeny), de
  ret
I've tested every subroutine, and they all worked normally. The stack is also used correctelly (I think), So why is it clearing my ram?

1041
Ash: Phoenix / Re: [A:P] Demo Release/Discussion
« on: May 16, 2011, 02:10:27 pm »
This is definitely the best game on my calc :D, Good job  :thumbsup: !

however, I found 3 bugs:
 - When you enter the dark cave in the pass, Sometimes when you enter a fight, the calc freeses. I had to pull a battery to recover.
 - The screen didn't show the game anymore, but just random gray, white and black pixels. I don't know when this has happened, as my friend was playing it on my calc when this happened. Pressing [clear] solved this.
 - When I was walking around in the town you start in, The game crashed, and random crap apeared on the homescreen, and the cursor kept moving down (I had the same bug once in one of my axe games, so maybe it's a bug in axe itself). Pressing [clear] solved it too.

The game is still great, I just wanted to let you know there are some bugs.
btw: I usually got a lot more bugs while programming, so this is still very wel done.

1042
Doodle Jump / Re: DoodleJump Discussion
« on: May 14, 2011, 04:55:04 pm »
I think you forgot to sign your app.  Also, when you use Axe 0.5.1, make sure to always display in normal mode.  ;)
Yea, I think that too: After transferring the app to my calc, TIconnect showed a warning that the app wasn't signed, and the app was deleted from my calc.

1043
Computer Programming / Re: Opening a Website from C++
« on: May 14, 2011, 04:48:43 pm »
Maybe it's the easyest to detect the platform, and make a function for every platform

1044
OmnomIRC Development / Re: Post requirement missing?
« on: May 14, 2011, 03:34:07 pm »
Thanks. It's great to know that i might have saved OmnomIRC from a spam attack :)

1045
KnightOS / Re: Feature Requests
« on: May 14, 2011, 03:22:45 pm »
I don't know if this really fits in the feature requests section, but I think the size of the OS itself should be kept to the absolute minimum, and let every feature be an application. This way, you won't waste memory on the features you never use.

BTW: Look at windows. The windows OS can do nothing. If you want to calculate, you use the 'calculator' application, If you want to edit text, you use notepad.

1046
OmnomIRC Development / Re: Post requirement missing?
« on: May 14, 2011, 02:59:16 pm »
I already thought there was something wrong with it, and I thought writing it there was the fastest way to tell it. It wasn't meant as a spam or something, I was only doing it to help.

btw: It's quite scary to see an entire thread abouth yourself a short time after you did something...

1047
Computer Programming / Re: [java] drawOval problems
« on: May 14, 2011, 02:33:29 pm »
Look closely at this code:
Code: [Select]
for (wh = 0;wh>=r.nextInt(300);wh++) {It calculates a random number in every cycle of the for loop. This can be very irreliable.

further:
Code: [Select]
int wh = r.nextInt(300);
...
int wh = r.nextInt(300);
These two lines are a waste of size and CPU. I know that it's only a few bites and under a microsecound, but in a large applet, this kind of optimisation can tell the diference between fitting on a CD, and not fitting on a CD.

back to your question: You draw an oval with increasing the size, but always at a random location withouth deleting the previous one. I think your problem is that the screen is filled with hundreds of ovals so that you can't see a single oval. Instaed the screen will be just a solid color.

The first lines weren't an answer to your question, but I just wanted to help you to optimise your code.

1048
ASM / Re: my routine clears ram
« on: May 12, 2011, 03:18:47 pm »
just add 'call 3DTo2D' somewere on a part that is executed. You will get a ram clear

if you add 'call InitView' somewere, it doesn't couse a ram clear, but i don't know if it's working corectely as it should work together with 3DTo2D.

have written a simple 3D engine in GML and i try to rewrite it in asm. Maybe the GML code can help:
Code: (d3dto2d_init) [Select]
// d3dto2d_init(xfrom,yfrom,zfrom,xto,yto,zto,xup,yup,zup,angle,aspect,znear,zfar)
var d;

global.d3dto2d_xfrom = argument0;
global.d3dto2d_yfrom = argument1;
global.d3dto2d_zfrom = argument2;

global.d3dto2d_xto = argument3-global.d3dto2d_xfrom;
global.d3dto2d_yto = argument4-global.d3dto2d_yfrom;
global.d3dto2d_zto = argument5-global.d3dto2d_zfrom;
d = sqrt(global.d3dto2d_xto*global.d3dto2d_xto+global.d3dto2d_yto*global.d3dto2d_yto+global.d3dto2d_zto*global.d3dto2d_zto);
global.d3dto2d_xto /= d;
global.d3dto2d_yto /= d;
global.d3dto2d_zto /= d;

global.d3dto2d_xup = argument6;
global.d3dto2d_yup = argument7;
global.d3dto2d_zup = argument8;
d = global.d3dto2d_xup*global.d3dto2d_xto+global.d3dto2d_yup*global.d3dto2d_yto+global.d3dto2d_zup*global.d3dto2d_zto;
global.d3dto2d_xup -= d*global.d3dto2d_xto;
global.d3dto2d_yup -= d*global.d3dto2d_yto;
global.d3dto2d_zup -= d*global.d3dto2d_zto;
d = tan(degtorad(argument9)/2)*sqrt(global.d3dto2d_xup*global.d3dto2d_xup+global.d3dto2d_yup*global.d3dto2d_yup+global.d3dto2d_zup*global.d3dto2d_zup);
global.d3dto2d_xup /= d;
global.d3dto2d_yup /= d;
global.d3dto2d_zup /= d;

global.d3dto2d_xcross = (global.d3dto2d_yup*global.d3dto2d_zto-global.d3dto2d_zup*global.d3dto2d_yto)/argument10;
global.d3dto2d_ycross = (global.d3dto2d_zup*global.d3dto2d_xto-global.d3dto2d_xup*global.d3dto2d_zto)/argument10;
global.d3dto2d_zcross = (global.d3dto2d_xup*global.d3dto2d_yto-global.d3dto2d_yup*global.d3dto2d_xto)/argument10;

global.d3dto2d_znear = argument11;
global.d3dto2d_zfar = argument12;
The 'aspect' variable won't be ust in the asm version.
Code: (d3dto2dpoint) [Select]
// d3dto2d_point(x,y,z)
var xx,yy,zz,d;
xx = argument0-global.d3dto2d_xfrom;
yy = argument1-global.d3dto2d_yfrom;
zz = argument2-global.d3dto2d_zfrom;
d= xx*global.d3dto2d_xto+yy*global.d3dto2d_yto+zz*global.d3dto2d_zto;
if (d<global.d3dto2d_znear or d>global.d3dto2d_zfar){ Return = 0}else{Return = 1}
global.xx = (xx*global.d3dto2d_xcross+yy*global.d3dto2d_ycross+zz*global.d3dto2d_zcross)/d;
global.yy = (xx*global.d3dto2d_xup+yy*global.d3dto2d_yup+zz*global.d3dto2d_zup)/d;

return Return;

1049
ASM / Re: my routine clears ram
« on: May 11, 2011, 04:25:16 pm »
Here's the full source code

1050
ASM / my routine clears ram
« on: May 11, 2011, 03:56:58 pm »
Hi,

I've got an other problem: my routine clears the ram, and I don't know why...
from 'learn ti83plus asm in 28 Days', i know that ram clears usually appear when you used the stack incorrect, but I've counted all the pushes and pops of the routine, and there were as much pushes as pops. Further is the mem for all the vars stored in the program itself, so it can't be becouse i'm editing mem that shouldn't be edited.

It's just calculating with registers and vars, but i don't know how that can clear the ram.

anyway, here's my code
Code: [Select]
3DTo2D:
  ld a, 0
  ld (valid), a
  ld bc, (xpoint)
  ld de, (xfrom)
  call SubFP
  ld (xpoint), de
  ld bc, (ypoint)
  ld de, (yfrom)
  call SubFP
  ld (ypoint), de
  ld bc, (zpoint)
  ld de, (zfrom)
  call SubFP
  ld (zpoint), de
  ld hl, (xpoint)
  ld bc, (xto)
  call MulFP
  push de ;1
  ld hl, (ypoint)
  ld bc, (yto)
  call MulFP
  pop hl ;0
  add hl, de
  push hl ;1
  ld hl, (zpoint)
  ld bc, (zto)
  call MulFP
  pop hl ;0
  add hl, de
  push hl ;1
  ld a, l
  ld c, a
  ld a, (min_range)
  ld b, a
  ld a, c
  cp b
  jp c, Invalid
  ld c, a
  ld a, (max_range)
  ld b, a
  ld a, c
  cp b
  jp nc, Invalid
  ld a, 1
  ld (valid), a
  ld hl, (xpoint)
  ld bc, (xcross)
  call MulFP
  push de ;2
  ld hl, (ypoint)
  ld bc, (ycross)
  call MulFP
  pop hl ;1
  add hl, de
  push hl ;2
  ld hl, (zpoint)
  ld bc, (zcross)
  call MulFP
  pop hl ;1
  add hl, de
  pop de ;0
  push de ;1
  call DivFP
  ld (screenx), hl
  ld hl, (xpoint)
  ld bc, (xup)
  call MulFP
  push de ;2
  LD HL, (ypoint)
  ld bc, (yup)
  call MulFP
  pop hl ;1
  add hl, de
  push hl ;2
  ld hl, (zpoint)
  ld bc, (zup)
  call MulFP
  pop hl ;1
  add hl, bc
  pop de ;0
  call DivFP
  ld (screeny), hl
  ld hl, $0100
  ld de, (screenx)
  add hl, de
  ld bc, $5F00
  call MulFP
  ld (screenx), de
  ld hl, $0100
  ld de, (screeny)
  add hl, de
  ld bc, $4100
  call MulFP
  ld (screeny), de
Invalid:
  ret
btw: the commented numbers show the amount of items put on the stack by this routine.

Pages: 1 ... 68 69 [70] 71