diff options
author | JozanLeClerc <bousset.rudy@gmail.com> | 2020-04-17 14:41:20 +0200 |
---|---|---|
committer | JozanLeClerc <bousset.rudy@gmail.com> | 2020-04-17 14:41:20 +0200 |
commit | 396a5d42f979c5200532937f3428d68e049b1298 (patch) | |
tree | 34d6fd297fba43d196adb0d386b9a602c6081a95 | |
parent | Makefile fix (diff) | |
download | lowbat-bsd-396a5d42f979c5200532937f3428d68e049b1298.tar.gz lowbat-bsd-396a5d42f979c5200532937f3428d68e049b1298.tar.bz2 lowbat-bsd-396a5d42f979c5200532937f3428d68e049b1298.tar.xz lowbat-bsd-396a5d42f979c5200532937f3428d68e049b1298.tar.zst lowbat-bsd-396a5d42f979c5200532937f3428d68e049b1298.zip |
Fetch percent is ok
-rw-r--r-- | Makefile | 21 | ||||
-rw-r--r-- | asm/jo_f_percent.asm | 24 | ||||
-rw-r--r-- | asm/jo_f_status.asm | 7 | ||||
-rw-r--r-- | src/jo_main.c | 6 |
4 files changed, 40 insertions, 18 deletions
@@ -1,3 +1,15 @@ +########################################################################################## +#* *# +#* File : Makefile /_________/ *# +#* Author : Joe | *# +#* Date : 04/2020 | *# +#* Info : BSD Makefile | *# +#* / | *# +#* \ / *# +#* \_____/ *# +#* *# +########################################################################################## + default: all SHELL := /bin/sh @@ -61,14 +73,7 @@ depend: all: depend ${TARGET} clean: - ${RM} ${C_OBJS} - ${RM} ${A_OBJS} - ${RM} ${TARGET}.core - ${RM} .depend - ${RM} .depend.tmp - -fclean: clean - ${RM} ${TARGET} + ${RM} ${C_OBJS} ${A_OBJS} ${TARGET}.core .depend .depend.tmp ${TARGET} re: fclean all diff --git a/asm/jo_f_percent.asm b/asm/jo_f_percent.asm index 765ca99..76d792b 100644 --- a/asm/jo_f_percent.asm +++ b/asm/jo_f_percent.asm @@ -12,18 +12,36 @@ section .text extern system + extern atoi global jo_f_percent jo_f_percent: mov rdi, f_cmd call system + mov rdi, pr_file + mov rsi, 0x0 + mov rax, 0x5 + syscall + jc err + mov rdi, rax + mov rsi, buff + mov rdx, 0x3 + mov rax, 0x3 + syscall + jc err + mov rax, 0x6 + syscall + xor rax, rax + mov rdi, rsi + call atoi retq err: - mov rax, 0xff + mov rax, 0xfe retq section .data - f_cmd: db "apm -l > /tmp/lowbat.percent", 0x0 - buff: db 0x0, 0x0, 0x0, 0x0 + f_cmd: db "apm -l > /tmp/lowbat.percent", 0x0 + pr_file: db "/tmp/lowbat.percent", 0x0 + buff: db 0x0, 0x0, 0x0, 0x0 diff --git a/asm/jo_f_status.asm b/asm/jo_f_status.asm index 69fad67..326f58e 100644 --- a/asm/jo_f_status.asm +++ b/asm/jo_f_status.asm @@ -32,20 +32,17 @@ jo_f_status: 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 + sub rax, 0x30 ; 48 retq err: - mov rax, 0xff + mov rax, 0xfe retq section .data diff --git a/src/jo_main.c b/src/jo_main.c index 7ee0c83..f3e97f4 100644 --- a/src/jo_main.c +++ b/src/jo_main.c @@ -16,6 +16,7 @@ ** Files prefixes ** -------------- ** f: fetch +** n: notify */ int @@ -24,10 +25,11 @@ main(void) int8_t status; int8_t percent; - if ((status = jo_f_status()) < 0) { + if ((status = jo_f_status()) == -2) { return (JO_RET_RD_FAILED); } - if ((percent = jo_f_percent()) < 0) { + if ((percent = jo_f_percent()) == -3) { + printf("failed\n"); return (JO_RET_RD_FAILED); } printf("status: %hhd, %hhd%%\n", status, percent); |