summaryrefslogtreecommitdiff
path: root/engine/routines/flagpredef.asm
diff options
context:
space:
mode:
authormid-kid <esteve.varela@gmail.com>2018-03-25 18:24:14 +0200
committermid-kid <esteve.varela@gmail.com>2018-03-25 18:24:14 +0200
commitbe76ee56a89e72c0b87a605321bb1670e86f8220 (patch)
tree277ffa2bc094e74b27ec5b72f748b93e58b3437f /engine/routines/flagpredef.asm
parent0d9241889fc8a2f047b9fd6db25e55de1e721877 (diff)
Organize the engine/ directory, director's cut
Cleaned up `engine/routines`, in favor of moving files into more appropriate directories. predef-related routines are now in top-level `engine`. `rtc/delete_save_change_clock.asm` has been split into both `menus/delete_save.asm` and `rtc/reset_password.asm`. Made a new subdirectory: * engine/math: Contains all generic math-related routines.
Diffstat (limited to 'engine/routines/flagpredef.asm')
-rw-r--r--engine/routines/flagpredef.asm70
1 files changed, 0 insertions, 70 deletions
diff --git a/engine/routines/flagpredef.asm b/engine/routines/flagpredef.asm
deleted file mode 100644
index 2a6d91ee1..000000000
--- a/engine/routines/flagpredef.asm
+++ /dev/null
@@ -1,70 +0,0 @@
-SmallFarFlagAction: ; 4d7c1
-; Perform action b on bit c in flag array hl.
-; If checking a flag, check flag array d:hl unless d is 0.
-
-; For longer flag arrays, see FlagAction.
-
- push hl
- push bc
-
-; Divide by 8 to get the byte we want.
- push bc
- srl c
- srl c
- srl c
- ld b, 0
- add hl, bc
- pop bc
-
-; Which bit we want from the byte
- ld a, c
- and 7
- ld c, a
-
-; Shift left until we can mask the bit
- ld a, 1
- jr z, .shifted
-.shift
- add a
- dec c
- jr nz, .shift
-.shifted
- ld c, a
-
-; What are we doing to this flag?
- dec b
- jr z, .set ; 1
- dec b
- jr z, .check ; 2
-
-.reset
- ld a, c
- cpl
- and [hl]
- ld [hl], a
- jr .done
-
-.set
- ld a, [hl]
- or c
- ld [hl], a
- jr .done
-
-.check
- ld a, d
- cp 0
- jr nz, .farcheck
-
- ld a, [hl]
- and c
- jr .done
-
-.farcheck
- call GetFarByte
- and c
-
-.done
- pop bc
- pop hl
- ld c, a
- ret