new symbols
[awish.git] / asm / utils.awa
blob12bbca0ec7b75f3c0fd7bca4409bb52844d1e439
1 /*
2  * This program is free software: you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation, either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
14  */
15 proc: kill_all_threads
16 local: .cnt
17 ;defloc: .cnt = -1
18   rst FRST_GET_MAX_THREAD_ID
19   set [.cnt], [rst_result]
20 .loop:
21   jlt .quit, [.cnt], 1
22   kil [.cnt]
23   sub [.cnt], 1
24   jmp .loop
25 .quit:
26   ret
27 endp: kill_all_threads
30 clear_stack:
31   dpt
32   jle .quit, 1
33   swp
34   pop
35   jmp clear_stack
36 .quit:
37   ret