mirror of
https://github.com/livingcomputermuseum/UniBone.git
synced 2026-04-25 19:51:51 +00:00
48 lines
1.6 KiB
Plaintext
48 lines
1.6 KiB
Plaintext
;
|
|
; pru0_datout.asmsrc: PRU0 loop to copy XFR to GPIO out
|
|
;
|
|
; Copyright (c) 2018, Joerg Hoppe
|
|
; j_hoppe@t-online.de, www.retrocmp.com
|
|
;
|
|
; Permission is hereby granted, free of charge, to any person obtaining a
|
|
; copy of this software and associated documentation files (the "Software"),
|
|
; to deal in the Software without restriction, including without limitation
|
|
; the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
; and/or sell copies of the Software, and to permit persons to whom the
|
|
; Software is furnished to do so, subject to the following conditions:
|
|
;
|
|
; The above copyright notice and this permission notice shall be included in
|
|
; all copies or substantial portions of the Software.
|
|
;
|
|
; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
; JOERG HOPPE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
; IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
; CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
;
|
|
;
|
|
; 12-nov-2018 JH entered beta phase
|
|
;
|
|
;
|
|
; Assembler function, which endlessly reads r14 from XFR area
|
|
; and copies to output pins DATOUT
|
|
; needs 15ns to loop
|
|
;
|
|
; to be declared in C as
|
|
; extern "C" {
|
|
; void pru0_dataout(void) ;
|
|
; }
|
|
; See Compiler 2.2 Guide, Chapter 6.6
|
|
|
|
.global pru0_dataout
|
|
|
|
; a 32bit parameter is received in r14
|
|
; 10 ns delay
|
|
pru0_dataout:
|
|
; do nothing at first
|
|
; Device ID 14 = "other PRU"
|
|
xin 14,&r14,4
|
|
mov r30,r14
|
|
jmp pru0_dataout ; never returns
|