ML: MOVEDOWN and MOVERSU - Hewlett Packard

This is a discussion on ML: MOVEDOWN and MOVERSU - Hewlett Packard ; Hello all, does MOVEDOWN and MOVERSU work if run from a covered port? If I run my lib containing ML-Programs using this entry form a covered port my calc warmstarts. Somebody knows how tu use this entries correctly from a ...

+ Reply to Thread
Results 1 to 5 of 5

Thread: ML: MOVEDOWN and MOVERSU

  1. ML: MOVEDOWN and MOVERSU

    Hello all,

    does MOVEDOWN and MOVERSU work if run from a covered port?

    If I run my lib containing ML-Programs using this entry form a covered
    port my calc warmstarts. Somebody knows how tu use this entries
    correctly from a covered port ?

    TIA
    Andreas
    http://www.software49g.gmxhome.de


  2. Re: MOVEDOWN and MOVERSU

    Hello Andreas,

    did you check the carry after the call to =MOVERSU ?
    CS means 'not enough room' .

    The other important thing to notice:

    If you change the size of the ROMPART table from ML,
    you also have to update the pointers =ADISP and =VDISP2,
    since these are *not* automatically updated by =PTRADJUST .

    On the HP-48 G series you can do this using =ADJDISPUP (#02541h) ,
    which takes the amount of nibs to adjust in C[A] .

    =ADJDISPUP will be called *before* calling =MOVERSU .


    HTH

    Raymond


    "Andreas Möller" schrieb im Newsbeitrag
    news:1175629018.267019.63110@y66g2000hsf.googlegro ups.com...
    > Hello all,
    >
    > does MOVEDOWN and MOVERSU work if run from a covered port?
    >
    > If I run my lib containing ML-Programs using this entry form a covered
    > port my calc warmstarts. Somebody knows how tu use this entries
    > correctly from a covered port ?
    >
    > TIA
    > Andreas
    > http://www.software49g.gmxhome.de
    >




  3. Re: MOVEDOWN and MOVERSU

    Hello Raymond,

    I´ll check this, but then: why does it work perfectly when run form
    Port0 ?

    I use =MOVERSU and then copy my data with =MOVEDOWN in my reserved
    memory.

    Thanks a lot,
    Andreas

    On 3 Apr., 22:09, "Raymond Del Tondo" wrote:
    > Hello Andreas,
    >
    > did you check the carry after the call to =MOVERSU ?
    > CS means 'not enough room' .
    >
    > The other important thing to notice:
    >
    > If you change the size of the ROMPART table from ML,
    > you also have to update the pointers =ADISP and =VDISP2,
    > since these are *not* automatically updated by =PTRADJUST .
    >
    > On the HP-48 G series you can do this using =ADJDISPUP (#02541h) ,
    > which takes the amount of nibs to adjust in C[A] .
    >
    > =ADJDISPUP will be called *before* calling =MOVERSU .
    >
    > HTH
    >
    > Raymond
    >
    > "Andreas Möller" schrieb im Newsbeitragnews:1175629018.267019.63110@y66g2000hs f.googlegroups.com...
    >
    > > Hello all,

    >
    > > does MOVEDOWN and MOVERSU work if run from a covered port?

    >
    > > If I run my lib containing ML-Programs using this entry form a covered
    > > port my calc warmstarts. Somebody knows how tu use this entries
    > > correctly from a covered port ?

    >
    > > TIA
    > > Andreas
    > >http://www.software49g.gmxhome.de




  4. Re: MOVEDOWN and MOVERSU

    Hello Andreas,

    if run from port 0, no TEMPOB copy
    of your program will be created.

    If run from a (possibly) covered port,
    your program will first be copied to TEMPOB.

    This may shift some memory in the event of a GC.

    If your prog has some RPL surroundings,
    it may even be copied in parts, but not necessarily in one block,
    so if you have inter-code jumps, they may miss their target.

    Also, IRAM may not be at 'HOME',
    so your reserved mem block may be somewhere else...

    Regards

    Raymond


    "Andreas Möller" schrieb im Newsbeitrag
    news:1175632446.396279.7340@l77g2000hsb.googlegrou ps.com...
    Hello Raymond,

    I´ll check this, but then: why does it work perfectly when run form
    Port0 ?

    I use =MOVERSU and then copy my data with =MOVEDOWN in my reserved
    memory.

    Thanks a lot,
    Andreas

    On 3 Apr., 22:09, "Raymond Del Tondo" wrote:
    > Hello Andreas,
    >
    > did you check the carry after the call to =MOVERSU ?
    > CS means 'not enough room' .
    >
    > The other important thing to notice:
    >
    > If you change the size of the ROMPART table from ML,
    > you also have to update the pointers =ADISP and =VDISP2,
    > since these are *not* automatically updated by =PTRADJUST .
    >
    > On the HP-48 G series you can do this using =ADJDISPUP (#02541h) ,
    > which takes the amount of nibs to adjust in C[A] .
    >
    > =ADJDISPUP will be called *before* calling =MOVERSU .
    >
    > HTH
    >
    > Raymond
    >
    > "Andreas Möller" schrieb im
    > Newsbeitragnews:1175629018.267019.63110@y66g2000hs f.googlegroups.com...
    >
    > > Hello all,

    >
    > > does MOVEDOWN and MOVERSU work if run from a covered port?

    >
    > > If I run my lib containing ML-Programs using this entry form a covered
    > > port my calc warmstarts. Somebody knows how tu use this entries
    > > correctly from a covered port ?

    >
    > > TIA
    > > Andreas
    > >http://www.software49g.gmxhome.de





  5. Re: MOVEDOWN and MOVERSU

    Hello Raymond,

    this means, if I understand it right, that after running =MOVERSU from
    a covered port the program does not find itself anymore in memory
    because the adresses are not valid anymore because the whole TEMPOB
    area where the program resides has changed ?
    So I need to update the pointer to the next adress of my program ?

    TIA
    Andreas

    On 4 Apr., 00:15, "Raymond Del Tondo" wrote:
    > Hello Andreas,
    >
    > if run from port 0, no TEMPOB copy
    > of your program will be created.
    >
    > If run from a (possibly) covered port,
    > your program will first be copied to TEMPOB.
    >
    > This may shift some memory in the event of a GC.
    >
    > If your prog has some RPL surroundings,
    > it may even be copied in parts, but not necessarily in one block,
    > so if you have inter-code jumps, they may miss their target.
    >
    > Also, IRAM may not be at 'HOME',
    > so your reserved mem block may be somewhere else...
    >
    > Regards
    >
    > Raymond
    >
    > "Andreas Möller" schrieb im Newsbeitragnews:1175632446.396279.7340@l77g2000hsb .googlegroups.com...
    > Hello Raymond,
    >
    > I´ll check this, but then: why does it work perfectly when run form
    > Port0 ?
    >
    > I use =MOVERSU and then copy my data with =MOVEDOWN in my reserved
    > memory.
    >
    > Thanks a lot,
    > Andreas
    >
    > On 3 Apr., 22:09, "Raymond Del Tondo" wrote:
    >
    > > Hello Andreas,

    >
    > > did you check the carry after the call to =MOVERSU ?
    > > CS means 'not enough room' .

    >
    > > The other important thing to notice:

    >
    > > If you change the size of the ROMPART table from ML,
    > > you also have to update the pointers =ADISP and =VDISP2,
    > > since these are *not* automatically updated by =PTRADJUST .

    >
    > > On the HP-48 G series you can do this using =ADJDISPUP (#02541h) ,
    > > which takes the amount of nibs to adjust in C[A] .

    >
    > > =ADJDISPUP will be called *before* calling =MOVERSU .

    >
    > > HTH

    >
    > > Raymond

    >
    > > "Andreas Möller" schrieb im
    > > Newsbeitragnews:1175629018.267019.63110@y66g2000hs f.googlegroups.com...

    >
    > > > Hello all,

    >
    > > > does MOVEDOWN and MOVERSU work if run from a covered port?

    >
    > > > If I run my lib containing ML-Programs using this entry form a covered
    > > > port my calc warmstarts. Somebody knows how tu use this entries
    > > > correctly from a covered port ?

    >
    > > > TIA
    > > > Andreas
    > > >http://www.software49g.gmxhome.de




+ Reply to Thread