|
2006.11.20
Busy!
|
I'm a little busy because in a month I should take an exam... law stuff, that I hate. =(
For this exam I have made a little WinCE app with Lazarus for browsing the italian laws with my pocketpc (yes, it's much more easy to handle compared to a book =P)
About fpc4nds, now seems that the fpc compiler is stable enough to try to go on with the port. Another good news is that I will get a ds-x card for free, because I was chosen for their developers support program. :D
|
2006.11.09
no$gba debugger
|
Finally I have got for 15 bucks a no$gba debugger! Still I not had the time to test it very deeply (I have received it yesterday), but it seems very good. I'll spend next few days to acquire confidence with this new tool, then I'll try to find where are the bugs on fpc4nds. Please, let me know if someone is in gba/nds debugging... I have a LOT of questions to ask ^_^
|
2006.10.22
Little compilers grow up
|
Things are going well, because the code I have posted a couple of days ago compiles and works fine ^_^
Next step is to make a working crt0 and linker script (the step that drove me crazy with gba compiler...) and making a better rtl (the one I have made is only a draft made by the gba one).
Only for your eyes, here is a screenshot of the demo (as for the gba, a wonderful red pixel in the middle of the screen!):

|
2006.10.19
First nds attempts
|
Florian has confirmed that current fpc compiler for arm can produce asm code compatible with arm9 cpu, so a nds porting should be doable. I have just started converting stuff: the compiler itself is identical to the gba one; the rtl need some (heavy?) adjustment... This first stage of porting is only matter of "try'n'compare", though it's a bit harder than the gba was: unfortunately I don't have found a nds emulator with debugger suitable for my attempts. I'll need to open a bank account in order to buy no$gba debugger =]
Here the source code of a little demo I'm trying to make it working (it should draw a red pixel in the middle of the upper screen of the nds):
program main;
const
DISPLAY_CR : ^dword = pointer($04000000);
SUB_DISPLAY_CR : ^dword = pointer($04001000);
VRAM_A : ^word = pointer($6800000);
VRAM_A_CR : ^byte = pointer($04000240);
VRAM_ENABLE = (1 shl 7);
begin
DISPLAY_CR^ := $00020000;
VRAM_A_CR^ := VRAM_ENABLE or 0;
VRAM_A[24450] := $001f;
end.
|
2006.10.16
Changes in the compiler
|
Florian has made some changes in the fpc compiler: now softfloat emulator is enabled by default, so you can use floating point variables, though it's very slow. Instead, you can use fixed point values or/and lookup tables.
Another change is that the linker script is now integrated in the compiler, so you can compile things by:
fpc -Parm myfile.pp -Xs -XX -Tgba -vi
without calling the linker. If you need to use different linker script, you can still use the way it was used before :)
A thank to Bernd Mueller that has reported the softfloat bug ;)
|
|