Lines Matching defs:ptr

183 				 int *ptr, uint32_t *saved, int print)
191 idx = U16(*ptr);
192 (*ptr) += 2;
223 idx = U8(*ptr);
224 (*ptr)++;
232 idx = U8(*ptr);
233 (*ptr)++;
269 idx = U16(*ptr);
270 (*ptr) += 2;
280 idx = U8(*ptr);
281 (*ptr)++;
294 val = U32(*ptr);
295 (*ptr) += 4;
302 val = U16(*ptr);
303 (*ptr) += 2;
311 val = U8(*ptr);
312 (*ptr)++;
319 idx = U8(*ptr);
320 (*ptr)++;
326 idx = U8(*ptr);
327 (*ptr)++;
367 static void atom_skip_src_int(atom_exec_context *ctx, uint8_t attr, int *ptr)
373 (*ptr) += 2;
380 (*ptr)++;
385 (*ptr) += 4;
390 (*ptr) += 2;
396 (*ptr)++;
403 static uint32_t atom_get_src(atom_exec_context *ctx, uint8_t attr, int *ptr)
405 return atom_get_src_int(ctx, attr, ptr, NULL, 1);
408 static uint32_t atom_get_src_direct(atom_exec_context *ctx, uint8_t align, int *ptr)
414 val = U32(*ptr);
415 (*ptr) += 4;
420 val = U16(*ptr);
421 (*ptr) += 2;
427 val = U8(*ptr);
428 (*ptr)++;
435 int *ptr, uint32_t *saved, int print)
440 ptr, saved, print);
443 static void atom_skip_dst(atom_exec_context *ctx, int arg, uint8_t attr, int *ptr)
447 3] << 3, ptr);
451 int *ptr, uint32_t val, uint32_t saved)
464 idx = U16(*ptr);
465 (*ptr) += 2;
497 idx = U8(*ptr);
498 (*ptr)++;
503 idx = U8(*ptr);
504 (*ptr)++;
536 idx = U8(*ptr);
537 (*ptr)++;
546 idx = U8(*ptr);
547 (*ptr)++;
552 idx = U8(*ptr);
553 (*ptr)++;
586 static void atom_op_add(atom_exec_context *ctx, int *ptr, int arg)
588 uint8_t attr = U8((*ptr)++);
590 int dptr = *ptr;
592 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
594 src = atom_get_src(ctx, attr, ptr);
600 static void atom_op_and(atom_exec_context *ctx, int *ptr, int arg)
602 uint8_t attr = U8((*ptr)++);
604 int dptr = *ptr;
606 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
608 src = atom_get_src(ctx, attr, ptr);
614 static void atom_op_beep(atom_exec_context *ctx, int *ptr, int arg)
619 static void atom_op_calltable(atom_exec_context *ctx, int *ptr, int arg)
621 int idx = U8((*ptr)++);
635 static void atom_op_clear(atom_exec_context *ctx, int *ptr, int arg)
637 uint8_t attr = U8((*ptr)++);
639 int dptr = *ptr;
642 atom_get_dst(ctx, arg, attr, ptr, &saved, 0);
647 static void atom_op_compare(atom_exec_context *ctx, int *ptr, int arg)
649 uint8_t attr = U8((*ptr)++);
652 dst = atom_get_dst(ctx, arg, attr, ptr, NULL, 1);
654 src = atom_get_src(ctx, attr, ptr);
661 static void atom_op_delay(atom_exec_context *ctx, int *ptr, int arg)
663 unsigned count = U8((*ptr)++);
673 static void atom_op_div(atom_exec_context *ctx, int *ptr, int arg)
675 uint8_t attr = U8((*ptr)++);
678 dst = atom_get_dst(ctx, arg, attr, ptr, NULL, 1);
680 src = atom_get_src(ctx, attr, ptr);
690 static void atom_op_eot(atom_exec_context *ctx, int *ptr, int arg)
695 static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
697 int execute = 0, target = U16(*ptr);
700 (*ptr) += 2;
744 *ptr = ctx->start + target;
748 static void atom_op_mask(atom_exec_context *ctx, int *ptr, int arg)
750 uint8_t attr = U8((*ptr)++);
752 int dptr = *ptr;
754 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
755 mask = atom_get_src_direct(ctx, ((attr >> 3) & 7), ptr);
758 src = atom_get_src(ctx, attr, ptr);
765 static void atom_op_move(atom_exec_context *ctx, int *ptr, int arg)
767 uint8_t attr = U8((*ptr)++);
769 int dptr = *ptr;
771 atom_get_dst(ctx, arg, attr, ptr, &saved, 0);
773 atom_skip_dst(ctx, arg, attr, ptr);
777 src = atom_get_src(ctx, attr, ptr);
782 static void atom_op_mul(atom_exec_context *ctx, int *ptr, int arg)
784 uint8_t attr = U8((*ptr)++);
787 dst = atom_get_dst(ctx, arg, attr, ptr, NULL, 1);
789 src = atom_get_src(ctx, attr, ptr);
793 static void atom_op_nop(atom_exec_context *ctx, int *ptr, int arg)
798 static void atom_op_or(atom_exec_context *ctx, int *ptr, int arg)
800 uint8_t attr = U8((*ptr)++);
802 int dptr = *ptr;
804 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
806 src = atom_get_src(ctx, attr, ptr);
812 static void atom_op_postcard(atom_exec_context *ctx, int *ptr, int arg)
814 uint8_t val = U8((*ptr)++);
818 static void atom_op_repeat(atom_exec_context *ctx, int *ptr, int arg)
823 static void atom_op_restorereg(atom_exec_context *ctx, int *ptr, int arg)
828 static void atom_op_savereg(atom_exec_context *ctx, int *ptr, int arg)
833 static void atom_op_setdatablock(atom_exec_context *ctx, int *ptr, int arg)
835 int idx = U8(*ptr);
836 (*ptr)++;
847 static void atom_op_setfbbase(atom_exec_context *ctx, int *ptr, int arg)
849 uint8_t attr = U8((*ptr)++);
851 ctx->ctx->fb_base = atom_get_src(ctx, attr, ptr);
854 static void atom_op_setport(atom_exec_context *ctx, int *ptr, int arg)
859 port = U16(*ptr);
868 (*ptr) += 2;
872 (*ptr)++;
876 (*ptr)++;
881 static void atom_op_setregblock(atom_exec_context *ctx, int *ptr, int arg)
883 ctx->ctx->reg_block = U16(*ptr);
884 (*ptr) += 2;
888 static void atom_op_shift_left(atom_exec_context *ctx, int *ptr, int arg)
890 uint8_t attr = U8((*ptr)++), shift;
892 int dptr = *ptr;
896 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
897 shift = atom_get_src_direct(ctx, ATOM_SRC_BYTE0, ptr);
904 static void atom_op_shift_right(atom_exec_context *ctx, int *ptr, int arg)
906 uint8_t attr = U8((*ptr)++), shift;
908 int dptr = *ptr;
912 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
913 shift = atom_get_src_direct(ctx, ATOM_SRC_BYTE0, ptr);
920 static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg)
922 uint8_t attr = U8((*ptr)++), shift;
924 int dptr = *ptr;
927 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
930 shift = atom_get_src(ctx, attr, ptr);
939 static void atom_op_shr(atom_exec_context *ctx, int *ptr, int arg)
941 uint8_t attr = U8((*ptr)++), shift;
943 int dptr = *ptr;
946 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
949 shift = atom_get_src(ctx, attr, ptr);
958 static void atom_op_sub(atom_exec_context *ctx, int *ptr, int arg)
960 uint8_t attr = U8((*ptr)++);
962 int dptr = *ptr;
964 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
966 src = atom_get_src(ctx, attr, ptr);
972 static void atom_op_switch(atom_exec_context *ctx, int *ptr, int arg)
974 uint8_t attr = U8((*ptr)++);
977 src = atom_get_src(ctx, attr, ptr);
978 while (U16(*ptr) != ATOM_CASE_END)
979 if (U8(*ptr) == ATOM_CASE_MAGIC) {
980 (*ptr)++;
984 ptr);
985 target = U16(*ptr);
988 *ptr = ctx->start + target;
991 (*ptr) += 2;
996 (*ptr) += 2;
999 static void atom_op_test(atom_exec_context *ctx, int *ptr, int arg)
1001 uint8_t attr = U8((*ptr)++);
1004 dst = atom_get_dst(ctx, arg, attr, ptr, NULL, 1);
1006 src = atom_get_src(ctx, attr, ptr);
1011 static void atom_op_xor(atom_exec_context *ctx, int *ptr, int arg)
1013 uint8_t attr = U8((*ptr)++);
1015 int dptr = *ptr;
1017 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
1019 src = atom_get_src(ctx, attr, ptr);
1025 static void atom_op_debug(atom_exec_context *ctx, int *ptr, int arg)
1161 int len, ws, ps, ptr;
1172 ptr = base + ATOM_CT_CODE_PTR;
1189 op = CU8(ptr++);
1191 SDEBUG("%s @ 0x%04X\n", atom_op_names[op], ptr - 1);
1193 SDEBUG("[%d] @ 0x%04X\n", op, ptr - 1);
1196 base, len, ws, ps, ptr - 1);
1202 opcode_table[op].func(&ectx, &ptr,