2023-07-30 17:23:30 +02:00
|
|
|
PRIVATE &password
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @keyword
|
|
|
|
|
; ^ @variable.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
ENTRY &password
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @keyword
|
|
|
|
|
; ^ @parameter
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
ENTRY %LINE &salt
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @keyword
|
|
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @parameter
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
IF "&password"==""
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @conditional
|
|
|
|
|
; ^ @string
|
|
|
|
|
; ^ @variable.builtin
|
|
|
|
|
; ^ @operator
|
2023-07-30 17:23:30 +02:00
|
|
|
(
|
|
|
|
|
ECHO "Failed to provide password."
|
|
|
|
|
ENDDO
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword.return
|
2023-07-30 17:23:30 +02:00
|
|
|
)
|
|
|
|
|
ELSE
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @conditional
|
2023-07-30 17:23:30 +02:00
|
|
|
(
|
|
|
|
|
PRIVATE &pass
|
|
|
|
|
|
|
|
|
|
&pass=FALSE()
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @function.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
WHILE !&pass
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @operator
|
2023-07-30 17:23:30 +02:00
|
|
|
(
|
|
|
|
|
GOSUB verify_password "&password"
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @function.call
|
2023-07-30 17:23:30 +02:00
|
|
|
RETURNVALUES &pass
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @parameter
|
2023-07-30 17:23:30 +02:00
|
|
|
WAIT 10.ms
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @float
|
2023-07-30 17:23:30 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
IF !&pass
|
|
|
|
|
GOTO fail
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @label
|
2023-07-30 17:23:30 +02:00
|
|
|
ELSE
|
|
|
|
|
(
|
|
|
|
|
GOSUB start_debug
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @function.call
|
2023-07-30 17:23:30 +02:00
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
LOCAL &num
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @variable.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
&num = 2.
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @number
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
RePeaT &num PRINT "Password: &password"
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @variable.builtin
|
|
|
|
|
; ^ @variable.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
WinCLEAR
|
|
|
|
|
FramePOS ,,,,Maximized
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @punctuation.delimiter
|
|
|
|
|
; ^ @constant.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
WinPOS 0% 50% 100% 35%
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @float
|
2023-07-30 17:23:30 +02:00
|
|
|
COVerage.ListFunc
|
|
|
|
|
|
|
|
|
|
ENDDO
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fail:
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @label
|
2023-07-30 17:23:30 +02:00
|
|
|
PRINT %ERROR "Password verification failed."
|
|
|
|
|
END
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword.return
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
verify_password:
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @function
|
2023-07-30 17:23:30 +02:00
|
|
|
(
|
|
|
|
|
PARAMETERS &password
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @parameter
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
SYStem.Option.KEYCODE "&password"
|
|
|
|
|
SYStem.JtagClock 1kHz
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @float
|
2023-07-30 17:23:30 +02:00
|
|
|
SYStem.Mode.Attach
|
|
|
|
|
|
2023-07-30 18:10:40 +02:00
|
|
|
Data.Set N: EAXI:0x34000000 %Long 0x34000100 0x34000021 /verify
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @number
|
|
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @number
|
|
|
|
|
; ^ @constant.builtin
|
2023-07-30 17:23:30 +02:00
|
|
|
|
|
|
|
|
RETURN TRUE()
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword.return
|
2023-07-30 17:23:30 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SUBROUTINE start_debug
|
2023-12-24 12:52:21 +01:00
|
|
|
; <- @keyword.function
|
|
|
|
|
; ^ @function
|
2023-07-30 17:23:30 +02:00
|
|
|
(
|
2023-07-30 18:10:40 +02:00
|
|
|
COVerage.ListModule %MULTI.OBC \sieve
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword
|
|
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @symbol
|
2023-07-30 18:10:40 +02:00
|
|
|
|
|
|
|
|
Var.DRAW flags[0..16] /Alternate 3
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword
|
|
|
|
|
; ^ @variable
|
|
|
|
|
; ^ @constant.builtin
|
|
|
|
|
; ^ @number
|
2023-07-30 18:10:40 +02:00
|
|
|
|
2023-07-30 17:23:30 +02:00
|
|
|
Go main
|
|
|
|
|
RETURN
|
2023-12-24 12:52:21 +01:00
|
|
|
; ^ @keyword.return
|
2023-07-30 17:23:30 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// vim: set ft=t32:
|