From 3371ce7e13681190e4446836c908e53fd993d959 Mon Sep 17 00:00:00 2001 From: RossTheRoss Date: Sun, 9 Feb 2020 12:52:07 -0600 Subject: Fix some dumb stuff --- Lab_2B.X/lab2b_asm.s | 77 ++++++++++++++++++++++++++-------------------------- 1 file changed, 39 insertions(+), 38 deletions(-) (limited to 'Lab_2B.X/lab2b_asm.s') diff --git a/Lab_2B.X/lab2b_asm.s b/Lab_2B.X/lab2b_asm.s index 675987e..ddee29b 100644 --- a/Lab_2B.X/lab2b_asm.s +++ b/Lab_2B.X/lab2b_asm.s @@ -1,39 +1,40 @@ -.include "xc.inc" - -.text ;BP (put the following data in ROM(program memory)) - -; This is a library, thus it can *not* contain a _main function: the C file will -; define main(). However, we -; we will need a .global statement to make available ASM functions to C code. -; All functions utilized outside of this file will need to have a leading -; underscore (_) and be included in a comment delimited list below. -.global _write_0, _write_1, _wait_100us, _wait_1ms - -_wait_100us: - repeat #1593 - nop - return - -_wait_1ms: - repeat #15993 - nop - return - -_write_0: ;2 cycles for function call - inc LATA ;1 - repeat #2 ;1 for load - nop ;2+1=3 nop - clr LATA ;1 - repeat #7 ;1 for load - nop ;1+7=8 nop - return ;3 return - - -_write_1: ;2 cycle call - inc LATA ;1 - repeat #8 ;1 load - nop ;1+9=10 nop - clr LATA ;1 - nop ;1 - return ;3 return +.include "xc.inc" + +.text ;BP (put the following data in ROM(program memory)) + +; This is a library, thus it can *not* contain a _main function: the C file will +; define main(). However, we +; we will need a .global statement to make available ASM functions to C code. +; All functions utilized outside of this file will need to have a leading +; underscore (_) and be included in a comment delimited list below. +.global _write_0, _write_1, _wait_100us, _wait_1ms + +_wait_100us: + repeat #1593 + nop + return + +_wait_1ms: + repeat #15993 + nop + return + +_write_0: ;2 cycles for function call + inc LATA ;1 + repeat #2 ;1 for load + nop ;2+1=3 nop + clr LATA ;1 + repeat #6 ;1 for load + nop ;1+6=7 nop + return ;3 return + + +_write_1: ;2 cycle call + inc LATA ;1 + repeat #8 ;1 load + nop ;1+9=10 nop + clr LATA ;1 + nop ;1 + nop ;1 + return ;3 return \ No newline at end of file -- cgit v1.2.3