; copytest.asm -- isolate the byte-copy loop used by tftpc.asm. ; ; malloc(01000h), then copy 256 bytes from SRC (values 0..255) with the same ; dint/movb/addk/dsjs/eint loop. A peek of the destination must show 00..FF. ; ; 0187A800 stage (1 entered, 2 copied) ; 0187A820 destination pointer ; 0187A840 entry SP ; 0187A860 entry A14 .text _start: setf 16, 0, 0 setf 32, 0, 1 mmtm sp, a0,a1,a2,a3,a4,a5,a6,a7 move sp, @0187A840h, 1 move a14, @0187A860h, 1 movi 1, a0, L move a0, @0187A800h, 1 move a14, -*sp, 1 movi 0187B800h, a14, L movi 01000h, a0, L move a0, *a14+, 1 calla 3F701230h move @0187A840h, sp, 1 move @0187A860h, a14, 1 setf 16, 0, 0 setf 32, 0, 1 move a8, @0187A820h, 1 move a8, a6 dint movi SRC, a5, L movi 256, a2, L copy_bytes: movb *a5, a0 movb a0, *a6 addk 8, a5 addk 8, a6 dsjs a2, copy_bytes eint movi 2, a0, L move a0, @0187A800h, 1 mmfm sp, a0,a1,a2,a3,a4,a5,a6,a7 movi 0, a8, L rets SRC: .word 00100h .word 00302h .word 00504h .word 00706h .word 00908h .word 00B0Ah .word 00D0Ch .word 00F0Eh .word 01110h .word 01312h .word 01514h .word 01716h .word 01918h .word 01B1Ah .word 01D1Ch .word 01F1Eh .word 02120h .word 02322h .word 02524h .word 02726h .word 02928h .word 02B2Ah .word 02D2Ch .word 02F2Eh .word 03130h .word 03332h .word 03534h .word 03736h .word 03938h .word 03B3Ah .word 03D3Ch .word 03F3Eh .word 04140h .word 04342h .word 04544h .word 04746h .word 04948h .word 04B4Ah .word 04D4Ch .word 04F4Eh .word 05150h .word 05352h .word 05554h .word 05756h .word 05958h .word 05B5Ah .word 05D5Ch .word 05F5Eh .word 06160h .word 06362h .word 06564h .word 06766h .word 06968h .word 06B6Ah .word 06D6Ch .word 06F6Eh .word 07170h .word 07372h .word 07574h .word 07776h .word 07978h .word 07B7Ah .word 07D7Ch .word 07F7Eh .word 08180h .word 08382h .word 08584h .word 08786h .word 08988h .word 08B8Ah .word 08D8Ch .word 08F8Eh .word 09190h .word 09392h .word 09594h .word 09796h .word 09998h .word 09B9Ah .word 09D9Ch .word 09F9Eh .word 0A1A0h .word 0A3A2h .word 0A5A4h .word 0A7A6h .word 0A9A8h .word 0ABAAh .word 0ADACh .word 0AFAEh .word 0B1B0h .word 0B3B2h .word 0B5B4h .word 0B7B6h .word 0B9B8h .word 0BBBAh .word 0BDBCh .word 0BFBEh .word 0C1C0h .word 0C3C2h .word 0C5C4h .word 0C7C6h .word 0C9C8h .word 0CBCAh .word 0CDCCh .word 0CFCEh .word 0D1D0h .word 0D3D2h .word 0D5D4h .word 0D7D6h .word 0D9D8h .word 0DBDAh .word 0DDDCh .word 0DFDEh .word 0E1E0h .word 0E3E2h .word 0E5E4h .word 0E7E6h .word 0E9E8h .word 0EBEAh .word 0EDECh .word 0EFEEh .word 0F1F0h .word 0F3F2h .word 0F5F4h .word 0F7F6h .word 0F9F8h .word 0FBFAh .word 0FDFCh .word 0FFFEh .end