1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; File : jo_f_status.asm /_________/ ;;
;; Author : Joe | ;;
;; Date : 04/2020 | ;;
;; Info : gets batt status | ;;
;; / | ;;
;; \ / ;;
;; \_____/ ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; apm status
;; ----------
;; 0: high
;; 1: low
;; 2: critical
;; 3: charging
section .text
extern system
global jo_f_status
jo_f_status:
mov rdi, f_cmd
call system
mov rdi, st_file
mov rsi, 0x0
mov rax, 0x5
syscall
jc err
mov rdi, rax
mov rsi, buff
mov rdx, 0x1
push rax
mov rax, 0x3
syscall
jc err
pop rax
mov rdi, rax
mov rax, 0x6
syscall
movsx rax, byte [rsi + 0x0]
sub rax, 0x30 ; 48
retq
err:
mov rax, 0xff
retq
section .data
f_cmd: db "apm -b > /tmp/lowbat.status", 0x0
st_file: db "/tmp/lowbat.status", 0x0
buff: db 0x0, 0x0
|