forked from KolibriOS/kolibrios
impl qrcodegen_encodeBinary
This commit is contained in:
@@ -102,6 +102,28 @@ PENALTY_N4 = 10
|
||||
|
||||
; CODE:
|
||||
|
||||
proc qrcodegen_encodeBinary uses xxx, dataAndTemp, dataLen, qrcode, ecl, minVersion, maxVersion, mask, boostEcl
|
||||
locals
|
||||
seg qrcodegen_Segment
|
||||
endl
|
||||
mov [seg + qrcodegen_Segment.mode], qrcodegen_Mode_BYTE
|
||||
stdcall calcSegmentBitLength, [seg + qrcodegen_Segment.mode], [dataLen]
|
||||
mov [seg + qrcodegen_Segment.bitLength], eax
|
||||
.if [seg + qrcodegen_Segment.bitLength] = LENGTH_OVERFLOW
|
||||
mov byte [qrcode + 0], 0 ; Set size to invalid value for safety
|
||||
jmp .ret
|
||||
.endif
|
||||
mov eax, [dataLen]
|
||||
mov [seg + qrcodegen_Segment.numChars], eax
|
||||
mov eax, [dataAndTemp]
|
||||
mov [seg + qrcodegen_Segment.data], eax
|
||||
lea eax, [seg]
|
||||
stdcall qrcodegen_encodeSegmentsAdvanced, eax, 1, [ecl], [minVersion], [maxVersion], [mask], [boostEcl], [dataAndTemp], [qrcode]
|
||||
.ret:
|
||||
ret
|
||||
endp
|
||||
|
||||
|
||||
|
||||
|
||||
; DATA:
|
||||
|
Reference in New Issue
Block a user