From fc9286f3b358f80dfabb1d3e6c7d3f468afa3a19 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Wed, 13 Jan 2021 21:00:20 -0800 Subject: 7514 --- baremetal/502manhattan-line.mu | 28 ---------------------------- baremetal/503manhattan-line.mu | 28 ++++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 28 deletions(-) delete mode 100644 baremetal/502manhattan-line.mu create mode 100644 baremetal/503manhattan-line.mu (limited to 'baremetal') diff --git a/baremetal/502manhattan-line.mu b/baremetal/502manhattan-line.mu deleted file mode 100644 index 0351fcb6..00000000 --- a/baremetal/502manhattan-line.mu +++ /dev/null @@ -1,28 +0,0 @@ -fn draw-box screen: (addr screen), x1: int, y1: int, x2: int, y2: int, color: int { - draw-horizontal-line screen, x1, x2, y1, color - draw-vertical-line screen, x1, y1, y2, color - draw-horizontal-line screen, x1, x2, y2, color - draw-vertical-line screen, x2, y1, y2, color -} - -fn draw-horizontal-line screen: (addr screen), x1: int, x2: int, y: int, color: int { - var x/eax: int <- copy x1 - { - compare x, x2 - break-if->= - pixel screen, x, y, color - x <- increment - loop - } -} - -fn draw-vertical-line screen: (addr screen), x: int, y1: int, y2: int, color: int { - var y/eax: int <- copy y1 - { - compare y, y2 - break-if->= - pixel screen, x, y, color - y <- increment - loop - } -} diff --git a/baremetal/503manhattan-line.mu b/baremetal/503manhattan-line.mu new file mode 100644 index 00000000..0351fcb6 --- /dev/null +++ b/baremetal/503manhattan-line.mu @@ -0,0 +1,28 @@ +fn draw-box screen: (addr screen), x1: int, y1: int, x2: int, y2: int, color: int { + draw-horizontal-line screen, x1, x2, y1, color + draw-vertical-line screen, x1, y1, y2, color + draw-horizontal-line screen, x1, x2, y2, color + draw-vertical-line screen, x2, y1, y2, color +} + +fn draw-horizontal-line screen: (addr screen), x1: int, x2: int, y: int, color: int { + var x/eax: int <- copy x1 + { + compare x, x2 + break-if->= + pixel screen, x, y, color + x <- increment + loop + } +} + +fn draw-vertical-line screen: (addr screen), x: int, y1: int, y2: int, color: int { + var y/eax: int <- copy y1 + { + compare y, y2 + break-if->= + pixel screen, x, y, color + y <- increment + loop + } +} -- cgit 1.4.1-2-gfad0