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

Pages: 1 2 3 [4] 5 6 ... 32
46
ASM / Re: Buffer fliping : messing with display
« on: April 25, 2014, 02:23:43 pm »
Seing thing like, that, it is indeed not really optimization bringing. Ok then. Let's try something else.  :P

47
Introduce Yourself! / Re: Greetings
« on: April 24, 2014, 06:16:38 am »
Heya welcome here !
I hope you like peanuts  ;D
!peanuts

48
Introduce Yourself! / Re: Hello!/NikProgrammer
« on: April 24, 2014, 06:13:57 am »
hi !
welcome there. Axe is indeed a nice language  :P
Have even MOAR peanuts:
 !peanuts
 !peanuts

49
ASM / Buffer fliping : messing with display
« on: April 24, 2014, 06:06:47 am »
So, I was trying to have a routine who update only part of screen who have to be updated (since wireframe 3D as a lot of white in  there...), but my routine totally failed.
I suppose there is a place where I didn't put enough dealy (wich I have specified), but increasing a delay here doesn't relly change anything  :P
Basically, it take two buffer, pointed by hl-767 and de-767, hl is wich is on the screen and de is what I want to display.
So I was wondering if there is a way to correct this routine and/or make more faster and optimized.
 
Code: [Select]

_BufferFlip:

ld a, $06

out ($10), a

ld a, $BF

out ($10), a

;set LCD to Y-decrement mode and set the max row



_OutLoop:

push af

ld b, $0C

_GetByte:

ld a, (de)

cp (hl)

ld (de), 0

ld (hl),a

jr nz, _PutByte

dec hl

dec de

djnz _GetByte

;compare until  byte is find

pop af

dec a

cp $80

;if 0, a=$80, and return.

jr z, _End

jp _OutLoop:

_PutByte:

push af

ld a, b

add a, $33

;set the column

out ($10), a

pop af

;here not enough delay !!!

out ($11), a

;write the byte

jp _GetByte

_End:

ld a,$05

out ($10), a

;put back LCD in the correct mode

ret
 

50
Axe / Re: Axe Q&A
« on: April 24, 2014, 05:58:12 am »
there is a tuto about external file, and it is also talking about file here : http://www.omnimaga.org/axe-language/external-vars-tutorial/msg152571/#msg152571

51
Axe / Re: Axe Q&A
« on: April 24, 2014, 05:51:17 am »
It specify the file you want to put your appv in.
It is logical the getcalc return you 0 if the appv was in archive, since it couldn't read it.

52
Axe / Re: Axe Q&A
« on: April 24, 2014, 05:45:08 am »
yes, that is possible. You can use file.
 
For example, let say you have appvDATA in archive, and you want a copy in ram.
You can do :
Code: [Select]
GetCalc("appvDATA",Y0)
.Y0 is the function token, it specifie the file you want to put the appv in. You have 10 file (Y0-Y9)
{Y0-2}r->A
.A will hold the size of the appv, stored 2 byte before the start of the appv.
.Next line will create a temporary vars (delete at the exit) with the size of the appv
 GetCalc("tmpDATATMP",A)->P
 Copy(Y0,P,A)
.this is allowed, but not everything can be done with file. (like 0->{Y0}r)
.P is now the pointer to appv.

In this code, I didn't check if all process succed in there task, but you most likely want to check the return value of GetCalc (0 if there is an error)
Also, when you want to store back your appv, you should be able to use Copy(P,Y0,A) (but I am not sure of this) (and based on the fact that A and P are not destroyed)
 
EDIT :  [-.-]~

53
Axe / Re: Axe Q&A
« on: April 22, 2014, 12:57:40 pm »
C9 is the equivalent of the assembly "ret" command, wich is the equivalent of the axe command "return".
It indeed stop the program and give the control back to the OS if it is not use in a routine or such.

54
TI Z80 / Re: GLIB a graphics axe 3d librairy
« on: April 17, 2014, 10:03:09 am »
Not really an update, but I spot nice optimization to do in VBO code, and currently trying to get these working  :P
I also made vertex shader a lot more powerfull, for example, you can now do this :
 
Code: [Select]
Lbl Shader
in °r1
in °N,6
max(dot(°N,vec3(0,0,-64)),0)r->L
gRotate(r1,r2,r3)
Lbl SubShader
gProject
Return

I still need to find a way to pass value to the rest of pipeline though ><

56
ASM / Re: SPASM build error
« on: April 16, 2014, 01:06:52 pm »
mmhhh... I'll go for a missing space between unary_function and the "<" token
(in file hash.h)
However,  I can't try it right now, so I am not sure if this will works  :/
 

57
Axe / Re: How does one make an Axe Library, in Axe.
« on: April 16, 2014, 12:58:03 pm »
If you have stored your string at the begining of the appv (with a copy for example), then you can use the pointer to the appv as a pointer to the string. Just remember that you have to store the 0 of the end of the string.
You can do for example, if the string "TOTO" + the 0 is stored in the appv TEST :
 
Code: [Select]
Getcalc("appvTEST")->P
Disp P

and it will display the string stored.
 

58
Axe / Re: Running axe software on CSE (no gfx)
« on: April 16, 2014, 10:16:53 am »
I guess that even if the program can actually be run on the CSE with those headers modification, screen updating and other drawing command will be totally messed up, cause screen are drasticlly different.
Math only program* may * run fine by the way.
 
Also, I don't know if bcall are the same on the two calc. If not, prepare to enter into crash mode  :P

59
Introduce Yourself! / Re: Hi everyone, Soulthym here
« on: April 12, 2014, 09:11:53 am »
welcome ! Glad you came back :p
Have some moar peanuts :
 
!peanuts

60
TI Z80 / Re: Order of Operations
« on: April 05, 2014, 10:27:00 am »
You can perfectly use Lbl EVALUATE. Axe allows up to 13 characters name, and you can also use lowercase.
(like Lbl Evaluate)

Pages: 1 2 3 [4] 5 6 ... 32