The following warnings occurred:
Warning [2] Undefined array key 0 - Line: 1677 - File: showthread.php PHP 8.2.31 (Linux)
File Line Function
/inc/class_error.php 157 errorHandler->error
/showthread.php 1677 errorHandler->error_callback
/showthread.php 916 buildtree




Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
POKE STRING and @string$
#16
LCD Wrote:Okay, so I do now know which one was not working... LD registerpair,(IX+offset) is invalid. Then this should work:
Code:
sub cpymempaged(src as Uinteger,des as Uinteger,length as Uinteger,bank as ubyte) asm ld a,(ix+11) ld bc,32765 out (c),a ld h,(ix+5) ld l,(ix+4) ld d,(ix+7) ld e,(ix+6) ld b,(ix+9) ld c,(ix+8) ldir ld a,(23388) ld bc,32765 out (c),a end asm end sub
Ok, I like this. My two cents: I think it's better to FASCALL it and use the POP sequence in this case:
Code:
sub fastcall cpymempaged(src as Uinteger,des as Uinteger,length as Uinteger,bank as ubyte) asm ex de, hl ; de = src pop hl ; RET address pop af ; bank ld bc,32765 out (c),a pop bc ; length ex (sp), hl ; hl = des, RET addr back in the stack ex de, hl ; hl = src, de = dest ldir ld a,(23388) ld bc,32765 out (c),a end asm end sub
Untested. Can you try it?
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)