| | Re: H8/300 Assembler/C interface Kekoa Proudfoot
|
| | (...) A brief review of the ROM disassembly seems to indicate the routines in ROM save r0-r5 if necessary. For example, the routine at 070c saves all registers. Like you said, parameters are passed in r6 with extra parameters on the stack. The (...) (24 years ago, 20-Apr-01, to lugnet.robotics.rcx)
|
| | |
| | | | RE: H8/300 Assembler/C interface Ralph Hempel
|
| | | | (...) Geez Kekoa, get some sleep. The GCC makes the callee clean up the stack. My pbForth ROM interface routines assume that the caller cleans up the stack, just like your RCX library which must have been confusing for you :-) I'll post all this in (...) (24 years ago, 21-Apr-01, to lugnet.robotics.rcx)
|
| | | | |
| | | | | | Re: H8/300 Assembler/C interface Kekoa Proudfoot
|
| | | | (...) Not my GCC: 00000016 <_main>: 16: 6d f6 mov.w r6,@-e7 <-- save frame pointer 18: 0d 76 mov.w r7,r6 <-- new frame pointer 1a: 6b 00 00 00 mov.w @0x0:16,r0 <-- r0r1 is 1st long param 1e: 6b 01 00 00 mov.w @0x0:16,r1 22: 6b 02 00 00 mov.w (...) (24 years ago, 21-Apr-01, to lugnet.robotics.rcx)
|
| | | | |
| | | | | | Re: H8/300 Assembler/C interface John A. Tamplin
|
| | | | | (...) -fomit-frame-pointer, but it can cause problems debugging (obviously not important here). John A. Tamplin jat@jaet.org 770/436-5387 HOME 4116 Manson Ave 770/431-9459 FAX Smyrna, GA 30082-3723 (24 years ago, 21-Apr-01, to lugnet.robotics.rcx)
|
| | | | | |
| | | | | | RE: H8/300 Assembler/C interface Ralph Hempel
|
| | | | (...) Sorry, looks like I need sleep too! (...) Hmm, looks like r2 is a copy of the high byte of the second long, but the complete long is pushed onto the stack! So the thing about GCC NOT splitting is true, it just keeps a copy of the higher order (...) (24 years ago, 21-Apr-01, to lugnet.robotics.rcx)
|
| | | | |