impl qrcodegen_encodeBinary

This commit is contained in:
2025-04-07 14:23:34 +03:00
parent 69ba2674ba
commit 62b3c9b8e6

View File

@@ -102,6 +102,28 @@ PENALTY_N4 = 10
; CODE: ; 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: ; DATA: