Who's Online |
39 user(s) are online ( 23 user(s) are browsing Forums)
Members: 1
Guests: 38
miggymac,
more...
|
|
|
|
Re: updating sgit
|
|
Just popping in
|
Hi all So I've got my cross compiler set up so can now look at simplegit again. So I have it forked at https://github.com/billyfish/simplegit/ and https://github.com/billyfish/simplegit/blob/master/build.md explains the different build options I added and these were things like which c runtime library to use, which libgit2 directory to use, whether to link to the AmiSSL shared library, etc. I can double track which revision it was that libgit2 moved from using straightforward memory copies to using mmap () and munmap () but it will now be a few years ago. So if we want to use the latest libgit2, we'll need implementations for those or workarounds libgit2 also comes with an example client, lg, which is what I built in the past. I'll take a look at the current state of play in libgit2 in the next day or two and see how many calls there are to mmap () and munmap () and adapt the build process to be able to use clib4 too
|
|
|
|
Re: updating sgit
|
|
Just popping in
|
Hi all
Blimey it's been a while! I lost my dev set up on my old computer but I can take a look at rebuilding it again.
So my memory is like a sieve but I'm pretty sure that I had the option to build it so that it would use the amissl shared libraries rather than statically linking to openssl. The main issue was that at some point libgit2 moved over to using mmap () and munmap () and we didn't have support for those at the time.
Over the weekend I'll see if I can get it all set up again and see what I can do.
cheers
billy
|
|
|
|
Re: Updater tool: latest releases and updates
|
Posted on: 2021/6/13 13:21
#3
|
Just popping in
|
@TSK Quote: Now if somebody could fix X1000's to accept Polaris cards!
100% Yes! I would happily pay towards this...
|
|
|
|
Re: MediaVault releases
|
Posted on: 2021/6/7 14:24
#4
|
Just popping in
|
@beanbandit Quote: Don't hangup with oo.library a more likely candidate is Jansson.library i would suggest to look into that if you have duplicates or an older version than the requested 2.12.1
That's always possible, could even be a bug in my porting of it :-/ Certainly George found a bug in the error handling that I need to look at. On my X1000, the latest version of MediaVault works fine for me, which probably doesn't help.
|
|
|
|
Re: GDB
|
Posted on: 2021/5/23 16:56
#5
|
Just popping in
|
@alfkil Quote: There is an issue on timing related to the setting and clearing of breakpoints. What kasie and billyfish is trying to do is to clear the instruction cache and is hoping, that this will establish a safety point to rely uppon, when execution of the sub-process is re-initiated. Only problem is : We have not established this. Unless we know how to rely and/or not rely on a function like IMMU->CacheClearE(), we have no grounds for assuming, that it works in one way or another.
In my initial work with db101 (and Qt as well), I needed to constantly check the minutest details about how the different functions of the system expressed their reliability-matrices. This resulted in a rather large battery of test-apps - all written in c - that might still reside on some harddrive somewhere. This is of course not an attempt to elicit some kind of awe-inflicting "historical value"-argument on my old harddrives. It is rather to say, that if you guys want to make progress, you need to isolate problems, and you need to go small - very small. I'd say, unless you can create a test-application in less than 5 lines for the main() function, and unless you can make that test app absolutely certainty-locked-hammered-and-closure-proven show, that your case is clear as a polished winter morning in your favorite fairytale fantasy - then you still have work to do.
Keep going, I know you can fix this.
Thanks Alfkil, this is really useful. Yup, I've got a very basic helloworld program that I'm using as my test case . As regards SimpleDebug, yup I'm using it big time and working on getting it into C so that I understand what magic your code is doing :) and then try and see what to do with that then. It's really useful for working out these GDB issues as it gives me a working example of debugging code that works correctly by stopping at a breakpoint. As for the latest with GDB, I've got my test case where I'm setting a breakpoint at a given line in both SimpleDebug and GDB. I've added code to print out the memory 32 bytes either side of where they are both inserting the breakpoint instruction so I can compare where they are putting it. I can see that GDB is putting at a different place which would explain it not working, so I'm thinking that I've got the relocation set up wrong. I'd copied the code from SimpleDebug where it relocates the .stabs and .stabstr sections into GDB but it looks like I need to do more. Hopefully I'm now on the right path with this And yes, getting you a working OS4 machine would be awesome!
|
|
|
|
Re: Amiga United Ltd
|
Posted on: 2021/5/19 12:52
#6
|
Just popping in
|
@walkero
This idea of all companies coming together definitely gets my vote!
|
|
|
|
Re: GDB
|
Posted on: 2021/5/19 12:12
#7
|
Just popping in
|
@Kamelito That's a good point, I call
IExec->CacheClearE((APTR)address, 0xffffffff, CACRF_ClearI| CACRF_ClearD);
after setting them. It's the same code in both SimpleDebug and gdb, but only works in SimpleDebug at the moment. My next step is to check a few bytes either side of where I'm putting the breakpoint to check whether they are the same in both situations in case I'm somehow writing to the wrong address in gdb.
|
|
|
|
Re: GDB
|
Posted on: 2021/5/18 19:43
#8
|
Just popping in
|
@Raziel
I look forward to it getting (ab)used! Well I still haven't managed to get the breakpoints working yet, something odd is going on. I've used both the old gdb trap instruction and the code that SimpleDebug uses and even though it appears that the breakpoint instructions get written to the memory, the code just happily executes. I've confirmed that the SimpleDebug breakpoint codes in itself so it's a bit of a puzzle. The next thing to check is the memory address that is getting overwritten with the breakpoint to see if it's the same for both programs.
On the plus side, the work I've done on adapting SimpleDebug means that we're still closer to having at least one debugger. My plan is still to get gdb behaving properly too but it's good to have options.
|
|
|
|
Re: Is there a fine line of working for free in Amiga world?
|
Posted on: 2021/5/8 12:50
#9
|
Just popping in
|
FWIW I really appreciate the beta testing and bug reporting you did on earmark George, it was super helpful. The more people chipping in, whether it being testing, developing, etc. the better, the more apps we get. I mean Roman is a one-man powerhouse of getting stuff ported!
|
|
|
|
Re: GDB
|
Posted on: 2021/5/7 23:48
#10
|
Just popping in
|
Sorry for being away from this for a few weeks, work has been crazy, I'll be back on this in thex next few days. As another route into this, I've also been working on getting a version of Alfkil's SimpleDebug code, since it worked for me, ported from C++ to C as a way of getting another debugger working too. One of the lessons I got from our work on GDB is that it helps me actually understand what is going on codewise more easily doing it that way, rather than tinkering at the edges of existing code not necessarily understanding what is going on. This should help the GDB port too and of course I'll make the github repo public. I also plan to add things like a gui to it too.
|
|
|
|
Re: Is there a fine line of working for free in Amiga world?
|
Posted on: 2021/5/7 23:39
#11
|
Just popping in
|
@Rigo
That reads a little bit harshly, certainly doesn't come across as whining to me anyway.
@walkero
I'm probably biased here as I'm lucky enough to do a job where all of my code is open source so making my amiga stuff open source is just more of the same for me. The issue is getting the time. For instance, I haven't had a chance to look at the gdb port for a few weeks, though it looks like I'll be able to again from the start of next week.
|
|
|
|
Re: gcc 9 and 10
|
Posted on: 2021/4/19 15:08
#12
|
Just popping in
|
If you have a globals header file you can have something like
#ifndef DOXYGEN_SHOULD_SKIP_THIS
#ifdef ALLOCATE_GLOBALS
#define GLOBAL_PREFIX
#define GLOBAL_VAL(x) = x
#else
#define GLOBAL_PREFIX extern
#define GLOBAL_VAL(x)
#endif
#endif /* #ifndef DOXYGEN_SHOULD_SKIP_THIS */
GLOBAL_PREFIX const char *G_NAME_S GLOBAL_VAL ("name");
GLOBAL_PREFIX int g_log_level GLOBAL_VAL (1);
then in one of the c source files have
#define ALLOCATE_GLOBALS (1)
before the #include "globals.h" line in that particular file and it will define and declare the variables just fine
|
|
|
|
Re: GDB
|
Posted on: 2021/4/3 15:30
#13
|
Just popping in
|
@kas1e Hi Roman, yeah it's been a bit slow in the last few days but I'm hoping to pick it up again in the next week. Obviously if anyone wants to get involved too, then they're very welcome! I've been going through the Spotless code too so see how things are done there which hopefully will give some insight into what I'm not doing for the breakpoints to be picked up correctly in GDB.
|
|
|
|
Re: Enhancer Software v2.0 Released
|
Posted on: 2021/3/31 14:11
#14
|
Just popping in
|
OK I've got a bug report for ES 2 version of copy. If I type
copy <file_1> <file_2>
Nothing happens. There is no error output and the second file isn't created. The OS 4.1 version of copy works fine.
I've removed the "copy" command in appdir: and am explicitly calling each version of the copy with their full path. I'm on an SFS 1.293 partition.
What new features does the ES copy command have?
|
|
|
|
Re: Enhancer Software v2.0 Released
|
Posted on: 2021/3/31 13:16
#15
|
Just popping in
|
Just for info I get a similar crash to @daveyw when running the installer. MULTIVIEWER:ScanSavers () when accessing mpega.datatype:_mpega_NewObject ().
version of DEVS:Datatypes/mpega is 53.26 version of sys:classes/datatypes/mpega.datatype is 54.2
|
|
|
|
Re: Enhancer Software v2.0 Released
|
Posted on: 2021/3/31 12:45
#16
|
Just popping in
|
A big thank you to the developers and Matthew for this. If the X1000 gets the hardware decoding library in the future I will definitely be doing the dance of joy Would happily pay if that could help make it a reality.
|
|
|
|
Re: ELF and shared objects headache
|
Posted on: 2021/3/26 10:27
#17
|
Just popping in
|
@afxgroup
Ignore my previous idea, didn't spot the call to _main();
Edited by billyfish on 2021/3/26 10:55:01
|
|
|
|
Re: Third Mouse button
|
Posted on: 2021/3/23 19:32
#18
|
Just popping in
|
|
|
|
|
Re: Third Mouse button
|
Posted on: 2021/3/23 19:16
#19
|
Just popping in
|
Flippety click does that and comes with the source code
|
|
|
|
Re: GDB
|
Posted on: 2021/3/23 17:44
#20
|
Just popping in
|
Thanks guys, I still haven't managed to get the breakpoints working, grr! Roman, can you remember when we did we have breakpoints working? If we did, then that will give me a base to compare to. The helloworld example doesn't crash for me but the breakpoints don't work. For example
#include <stdio.h>
int main (void)
{
printf ("hello world\n");
return 0;
}
Runs without crashing but any breakpoints just get ignored. I've uploaded some updates which that to deal with the debug messages sent by our hook function. For instance,
#include <stdio.h>
int main (void)
{
int *i_p = NULL;
printf ("here comes the crash...\n");
/* BOOM! */
*i_p = 9;
return 0;
}
will now get caught by gdb, though you can't inspect the variables, etc. yet. So that needs adding too. Hopefully the code from https://github.com/alfkil/Spotless/blo ... r/SimpleDebug/Symbols.cpp will give that to us. If you look at lines 96-109 of amigaos-nat.c, there are two new flags to adjust which functions get used by our target
/*
* If this is TRUE, then the breakpoint code based upon Spotless
* is used. If this is FALSE, then the breakpoint code based upon
* the old gdb 6.3 port is used instead.
*/
static const BOOL s_use_spotless_breakpoints_flag = FALSE;
/*
* If this is TRUE, then the memory transfer routine from the old
* gdb 6.3 port is used. If this is FALSE, then the code uses the
* new partial_mem_transfer API with amigaos_xfer_partial ()
* instead.
*/
static const BOOL s_use_deprecated_mem_transfer_flag = TRUE;
So still more to do but hopefully the breakpoints will work soon!
|
|
|
|