summaryrefslogtreecommitdiffstats
path: root/qemu/roms/SLOF/slof/fs/bootmsg.fs
blob: 524d4690889262f5a474997cbd0d8bc63daa3fd0 (plain)
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
\ *****************************************************************************
\ * Copyright (c) 2004, 2008 IBM Corporation
\ * All rights reserved.
\ * This program and the accompanying materials
\ * are made available under the terms of the BSD License
\ * which accompanies this distribution, and is available at
\ * http://www.opensource.org/licenses/bsd-license.php
\ *
\ * Contributors:
\ *     IBM Corporation - initial implementation
\ ****************************************************************************/
create debugstr 255 allot
0 VALUE debuglen
\ tbl@ d# 1000 * 196e6aa / VALUE TIME1
\ 0 VALUE TIME2

\ Usage: 42 cp
: cp ( checkpoint -- )
  \ cr depth 2 0.r s"  : " type .s cr  \ DEBUG
  \ cr ." time: " tbl@ d# 1000 * 196e6aa / dup TIME1 - dup . cr TIME2 + TO TIME2 TO TIME1
  bootmsg-cp ;

: (warning) ( id level ptr len -- )
  dup TO debuglen
  debugstr swap move           \ copy into buffer
  0 debuglen debugstr + c!     \ terminate '\0'
  debugstr bootmsg-warning
;

\ Usage: 42 0 warning" warning-txt"
: warning" ( id level [text<">] -- )
  postpone s" state @
  IF
    ['] (warning) compile,
  ELSE
    (warning)
  THEN
; immediate

: (debug-cp) ( id level ptr len -- )
  dup TO debuglen
  debugstr swap move           \ copy into buffer
  0 debuglen debugstr + c!     \ terminate '\0'
  debugstr bootmsg-debugcp
;

\ Usage: 42 0 debug-cp" debug-cp-txt"
: debug-cp" ( id level [text<">] -- )
  postpone s" state @
  IF
    ['] (debug-cp) compile,
  ELSE
    (debug-cp)
  THEN
; immediate

: (error) ( id ptr len -- )
  dup TO debuglen
  debugstr swap move           \ copy into buffer
  0 debuglen debugstr + c!     \ terminate '\0'
  debugstr bootmsg-error
;

\ Usage: 42 error" error-txt"
: error" ( id level [text<">] -- )
  postpone s" state @
  IF
    ['] (error) compile,
  ELSE
    (error)
  THEN
; immediate

bootmsg-nvupdate